(window["webpackJsonp"] = window["webpackJsonp"] || []).push([
    ["chunk.chimee-kernel-flv"], {
        "18d3": function (e, t, n) {
            (function (t, n) {
                e.exports = n()
            })("undefined" !== typeof self && self, (function () {
                return function (e) {
                    var t = {};

                    function n(r) {
                        if (t[r]) return t[r].exports;
                        var i = t[r] = {
                            i: r,
                            l: !1,
                            exports: {}
                        };
                        return e[r].call(i.exports, i, i.exports, n), i.l = !0, i.exports
                    }
                    return n.m = e, n.c = t, n.d = function (e, t, r) {
                        n.o(e, t) || Object.defineProperty(e, t, {
                            configurable: !1,
                            enumerable: !0,
                            get: r
                        })
                    }, n.n = function (e) {
                        var t = e && e.__esModule ? function () {
                            return e["default"]
                        } : function () {
                            return e
                        };
                        return n.d(t, "a", t), t
                    }, n.o = function (e, t) {
                        return Object.prototype.hasOwnProperty.call(e, t)
                    }, n.p = "", n(n.s = 12)
                }([function (e, t, n) {
                    (function (e, n) {
                        n(t)
                    })(0, (function (e) {
                        "use strict";

                        function t(e) {
                            return e && e.__esModule ? e["default"] : e
                        }

                        function n(e, t) {
                            return t = {
                                exports: {}
                            }, e(t, t.exports), t.exports
                        }
                        var r = Math.ceil,
                            i = Math.floor,
                            o = function (e) {
                                return isNaN(e = +e) ? 0 : (e > 0 ? i : r)(e)
                            },
                            a = function (e) {
                                if (void 0 == e) throw TypeError("Can't call method on  " + e);
                                return e
                            },
                            s = function (e) {
                                return function (t, n) {
                                    var r, i, s = String(a(t)),
                                        u = o(n),
                                        f = s.length;
                                    return u < 0 || u >= f ? e ? "" : void 0 : (r = s.charCodeAt(u), r < 55296 || r > 56319 || u + 1 === f || (i = s.charCodeAt(u + 1)) < 56320 || i > 57343 ? e ? s.charAt(u) : r : e ? s.slice(u, u + 2) : i - 56320 + (r - 55296 << 10) + 65536)
                                }
                            },
                            u = !0,
                            f = n((function (e) {
                                var t = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
                                "number" == typeof __g && (__g = t)
                            })),
                            c = n((function (e) {
                                var t = e.exports = {
                                    version: "2.4.0"
                                };
                                "number" == typeof __e && (__e = t)
                            })),
                            l = function (e) {
                                if ("function" != typeof e) throw TypeError(e + " is not a function!");
                                return e
                            },
                            d = function (e, t, n) {
                                if (l(e), void 0 === t) return e;
                                switch (n) {
                                    case 1:
                                        return function (n) {
                                            return e.call(t, n)
                                        };
                                    case 2:
                                        return function (n, r) {
                                            return e.call(t, n, r)
                                        };
                                    case 3:
                                        return function (n, r, i) {
                                            return e.call(t, n, r, i)
                                        }
                                }
                                return function () {
                                    return e.apply(t, arguments)
                                }
                            },
                            h = function (e) {
                                return "object" === typeof e ? null !== e : "function" === typeof e
                            },
                            p = function (e) {
                                if (!h(e)) throw TypeError(e + " is not an object!");
                                return e
                            },
                            v = function (e) {
                                try {
                                    return !!e()
                                } catch (t) {
                                    return !0
                                }
                            },
                            m = !v((function () {
                                return 7 != Object.defineProperty({}, "a", {
                                    get: function () {
                                        return 7
                                    }
                                }).a
                            })),
                            y = f.document,
                            g = h(y) && h(y.createElement),
                            b = function (e) {
                                return g ? y.createElement(e) : {}
                            },
                            _ = !m && !v((function () {
                                return 7 != Object.defineProperty(b("div"), "a", {
                                    get: function () {
                                        return 7
                                    }
                                }).a
                            })),
                            w = function (e, t) {
                                if (!h(e)) return e;
                                var n, r;
                                if (t && "function" == typeof (n = e.toString) && !h(r = n.call(e))) return r;
                                if ("function" == typeof (n = e.valueOf) && !h(r = n.call(e))) return r;
                                if (!t && "function" == typeof (n = e.toString) && !h(r = n.call(e))) return r;
                                throw TypeError("Can't convert object to primitive value")
                            },
                            S = Object.defineProperty,
                            k = m ? Object.defineProperty : function (e, t, n) {
                                if (p(e), t = w(t, !0), p(n), _) try {
                                    return S(e, t, n)
                                } catch (r) {}
                                if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
                                return "value" in n && (e[t] = n.value), e
                            },
                            E = {
                                f: k
                            },
                            O = function (e, t) {
                                return {
                                    enumerable: !(1 & e),
                                    configurable: !(2 & e),
                                    writable: !(4 & e),
                                    value: t
                                }
                            },
                            T = m ? function (e, t, n) {
                                return E.f(e, t, O(1, n))
                            } : function (e, t, n) {
                                return e[t] = n, e
                            },
                            A = "prototype",
                            x = function (e, t, n) {
                                var r, i, o, a = e & x.F,
                                    s = e & x.G,
                                    u = e & x.S,
                                    l = e & x.P,
                                    h = e & x.B,
                                    p = e & x.W,
                                    v = s ? c : c[t] || (c[t] = {}),
                                    m = v[A],
                                    y = s ? f : u ? f[t] : (f[t] || {})[A];
                                for (r in s && (n = t), n) i = !a && y && void 0 !== y[r], i && r in v || (o = i ? y[r] : n[r], v[r] = s && "function" != typeof y[r] ? n[r] : h && i ? d(o, f) : p && y[r] == o ? function (e) {
                                    var t = function (t, n, r) {
                                        if (this instanceof e) {
                                            switch (arguments.length) {
                                                case 0:
                                                    return new e;
                                                case 1:
                                                    return new e(t);
                                                case 2:
                                                    return new e(t, n)
                                            }
                                            return new e(t, n, r)
                                        }
                                        return e.apply(this, arguments)
                                    };
                                    return t[A] = e[A], t
                                }(o) : l && "function" == typeof o ? d(Function.call, o) : o, l && ((v.virtual || (v.virtual = {}))[r] = o, e & x.R && m && !m[r] && T(m, r, o)))
                            };
                        x.F = 1, x.G = 2, x.S = 4, x.P = 8, x.B = 16, x.W = 32, x.U = 64, x.R = 128;
                        var R = x,
                            M = T,
                            D = {}.hasOwnProperty,
                            L = function (e, t) {
                                return D.call(e, t)
                            },
                            B = {},
                            P = {}.toString,
                            C = function (e) {
                                return P.call(e).slice(8, -1)
                            },
                            I = Object("z").propertyIsEnumerable(0) ? Object : function (e) {
                                return "String" == C(e) ? e.split("") : Object(e)
                            },
                            j = function (e) {
                                return I(a(e))
                            },
                            N = Math.min,
                            F = function (e) {
                                return e > 0 ? N(o(e), 9007199254740991) : 0
                            },
                            U = Math.max,
                            V = Math.min,
                            z = function (e, t) {
                                return e = o(e), e < 0 ? U(e + t, 0) : V(e, t)
                            },
                            G = function (e) {
                                return function (t, n, r) {
                                    var i, o = j(t),
                                        a = F(o.length),
                                        s = z(r, a);
                                    if (e && n != n) {
                                        while (a > s)
                                            if (i = o[s++], i != i) return !0
                                    } else
                                        for (; a > s; s++)
                                            if ((e || s in o) && o[s] === n) return e || s || 0;
                                    return !e && -1
                                }
                            },
                            W = "__core-js_shared__",
                            q = f[W] || (f[W] = {}),
                            H = function (e) {
                                return q[e] || (q[e] = {})
                            },
                            K = 0,
                            Y = Math.random(),
                            J = function (e) {
                                return "Symbol(".concat(void 0 === e ? "" : e, ")_", (++K + Y).toString(36))
                            },
                            X = H("keys"),
                            $ = function (e) {
                                return X[e] || (X[e] = J(e))
                            },
                            Q = G(!1),
                            Z = $("IE_PROTO"),
                            ee = function (e, t) {
                                var n, r = j(e),
                                    i = 0,
                                    o = [];
                                for (n in r) n != Z && L(r, n) && o.push(n);
                                while (t.length > i) L(r, n = t[i++]) && (~Q(o, n) || o.push(n));
                                return o
                            },
                            te = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),
                            ne = Object.keys || function (e) {
                                return ee(e, te)
                            },
                            re = m ? Object.defineProperties : function (e, t) {
                                p(e);
                                var n, r = ne(t),
                                    i = r.length,
                                    o = 0;
                                while (i > o) E.f(e, n = r[o++], t[n]);
                                return e
                            },
                            ie = f.document && document.documentElement,
                            oe = $("IE_PROTO"),
                            ae = function () {},
                            se = "prototype",
                            ue = function () {
                                var e, t = b("iframe"),
                                    n = te.length,
                                    r = "<",
                                    i = ">";
                                t.style.display = "none", ie.appendChild(t), t.src = "javascript:", e = t.contentWindow.document, e.open(), e.write(r + "script" + i + "document.F=Object" + r + "/script" + i), e.close(), ue = e.F;
                                while (n--) delete ue[se][te[n]];
                                return ue()
                            },
                            fe = Object.create || function (e, t) {
                                var n;
                                return null !== e ? (ae[se] = p(e), n = new ae, ae[se] = null, n[oe] = e) : n = ue(), void 0 === t ? n : re(n, t)
                            },
                            ce = n((function (e) {
                                var t = H("wks"),
                                    n = f.Symbol,
                                    r = "function" == typeof n,
                                    i = e.exports = function (e) {
                                        return t[e] || (t[e] = r && n[e] || (r ? n : J)("Symbol." + e))
                                    };
                                i.store = t
                            })),
                            le = E.f,
                            de = ce("toStringTag"),
                            he = function (e, t, n) {
                                e && !L(e = n ? e : e.prototype, de) && le(e, de, {
                                    configurable: !0,
                                    value: t
                                })
                            },
                            pe = {};
                        T(pe, ce("iterator"), (function () {
                            return this
                        }));
                        var ve = function (e, t, n) {
                                e.prototype = fe(pe, {
                                    next: O(1, n)
                                }), he(e, t + " Iterator")
                            },
                            me = function (e) {
                                return Object(a(e))
                            },
                            ye = $("IE_PROTO"),
                            ge = Object.prototype,
                            be = Object.getPrototypeOf || function (e) {
                                return e = me(e), L(e, ye) ? e[ye] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? ge : null
                            },
                            _e = ce("iterator"),
                            we = !([].keys && "next" in [].keys()),
                            Se = "@@iterator",
                            ke = "keys",
                            Ee = "values",
                            Oe = function () {
                                return this
                            },
                            Te = function (e, t, n, r, i, o, a) {
                                ve(n, t, r);
                                var s, f, c, l = function (e) {
                                        if (!we && e in v) return v[e];
                                        switch (e) {
                                            case ke:
                                                return function () {
                                                    return new n(this, e)
                                                };
                                            case Ee:
                                                return function () {
                                                    return new n(this, e)
                                                }
                                        }
                                        return function () {
                                            return new n(this, e)
                                        }
                                    },
                                    d = t + " Iterator",
                                    h = i == Ee,
                                    p = !1,
                                    v = e.prototype,
                                    m = v[_e] || v[Se] || i && v[i],
                                    y = m || l(i),
                                    g = i ? h ? l("entries") : y : void 0,
                                    b = "Array" == t && v.entries || m;
                                if (b && (c = be(b.call(new e)), c !== Object.prototype && (he(c, d, !0), u || L(c, _e) || T(c, _e, Oe))), h && m && m.name !== Ee && (p = !0, y = function () {
                                        return m.call(this)
                                    }), u && !a || !we && !p && v[_e] || T(v, _e, y), B[t] = y, B[d] = Oe, i)
                                    if (s = {
                                            values: h ? y : l(Ee),
                                            keys: o ? y : l(ke),
                                            entries: g
                                        }, a)
                                        for (f in s) f in v || M(v, f, s[f]);
                                    else R(R.P + R.F * (we || p), t, s);
                                return s
                            },
                            Ae = s(!0);
                        Te(String, "String", (function (e) {
                            this._t = String(e), this._i = 0
                        }), (function () {
                            var e, t = this._t,
                                n = this._i;
                            return n >= t.length ? {
                                value: void 0,
                                done: !0
                            } : (e = Ae(t, n), this._i += e.length, {
                                value: e,
                                done: !1
                            })
                        }));
                        var xe = function () {},
                            Re = function (e, t) {
                                return {
                                    value: t,
                                    done: !!e
                                }
                            };
                        Te(Array, "Array", (function (e, t) {
                            this._t = j(e), this._i = 0, this._k = t
                        }), (function () {
                            var e = this._t,
                                t = this._k,
                                n = this._i++;
                            return !e || n >= e.length ? (this._t = void 0, Re(1)) : Re(0, "keys" == t ? n : "values" == t ? e[n] : [n, e[n]])
                        }), "values");
                        B.Arguments = B.Array, xe("keys"), xe("values"), xe("entries");
                        for (var Me = ce("toStringTag"), De = ["NodeList", "DOMTokenList", "MediaList", "StyleSheetList", "CSSRuleList"], Le = 0; Le < 5; Le++) {
                            var Be = De[Le],
                                Pe = f[Be],
                                Ce = Pe && Pe.prototype;
                            Ce && !Ce[Me] && T(Ce, Me, Be), B[Be] = B.Array
                        }
                        var Ie = ce,
                            je = {
                                f: Ie
                            },
                            Ne = je.f("iterator"),
                            Fe = n((function (e) {
                                e.exports = {
                                    default: Ne,
                                    __esModule: !0
                                }
                            })),
                            Ue = n((function (e) {
                                var t = J("meta"),
                                    n = E.f,
                                    r = 0,
                                    i = Object.isExtensible || function () {
                                        return !0
                                    },
                                    o = !v((function () {
                                        return i(Object.preventExtensions({}))
                                    })),
                                    a = function (e) {
                                        n(e, t, {
                                            value: {
                                                i: "O" + ++r,
                                                w: {}
                                            }
                                        })
                                    },
                                    s = function (e, n) {
                                        if (!h(e)) return "symbol" == typeof e ? e : ("string" == typeof e ? "S" : "P") + e;
                                        if (!L(e, t)) {
                                            if (!i(e)) return "F";
                                            if (!n) return "E";
                                            a(e)
                                        }
                                        return e[t].i
                                    },
                                    u = function (e, n) {
                                        if (!L(e, t)) {
                                            if (!i(e)) return !0;
                                            if (!n) return !1;
                                            a(e)
                                        }
                                        return e[t].w
                                    },
                                    f = function (e) {
                                        return o && c.NEED && i(e) && !L(e, t) && a(e), e
                                    },
                                    c = e.exports = {
                                        KEY: t,
                                        NEED: !1,
                                        fastKey: s,
                                        getWeak: u,
                                        onFreeze: f
                                    }
                            })),
                            Ve = E.f,
                            ze = function (e) {
                                var t = c.Symbol || (c.Symbol = u ? {} : f.Symbol || {});
                                "_" == e.charAt(0) || e in t || Ve(t, e, {
                                    value: je.f(e)
                                })
                            },
                            Ge = function (e, t) {
                                var n, r = j(e),
                                    i = ne(r),
                                    o = i.length,
                                    a = 0;
                                while (o > a)
                                    if (r[n = i[a++]] === t) return n
                            },
                            We = Object.getOwnPropertySymbols,
                            qe = {
                                f: We
                            },
                            He = {}.propertyIsEnumerable,
                            Ke = {
                                f: He
                            },
                            Ye = function (e) {
                                var t = ne(e),
                                    n = qe.f;
                                if (n) {
                                    var r, i = n(e),
                                        o = Ke.f,
                                        a = 0;
                                    while (i.length > a) o.call(e, r = i[a++]) && t.push(r)
                                }
                                return t
                            },
                            Je = Array.isArray || function (e) {
                                return "Array" == C(e)
                            },
                            Xe = te.concat("length", "prototype"),
                            $e = Object.getOwnPropertyNames || function (e) {
                                return ee(e, Xe)
                            },
                            Qe = {
                                f: $e
                            },
                            Ze = Qe.f,
                            et = {}.toString,
                            tt = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
                            nt = function (e) {
                                try {
                                    return Ze(e)
                                } catch (t) {
                                    return tt.slice()
                                }
                            },
                            rt = function (e) {
                                return tt && "[object Window]" == et.call(e) ? nt(e) : Ze(j(e))
                            },
                            it = {
                                f: rt
                            },
                            ot = Object.getOwnPropertyDescriptor,
                            at = m ? ot : function (e, t) {
                                if (e = j(e), t = w(t, !0), _) try {
                                    return ot(e, t)
                                } catch (n) {}
                                if (L(e, t)) return O(!Ke.f.call(e, t), e[t])
                            },
                            st = {
                                f: at
                            },
                            ut = Ue.KEY,
                            ft = st.f,
                            ct = E.f,
                            lt = it.f,
                            dt = f.Symbol,
                            ht = f.JSON,
                            pt = ht && ht.stringify,
                            vt = "prototype",
                            mt = ce("_hidden"),
                            yt = ce("toPrimitive"),
                            gt = {}.propertyIsEnumerable,
                            bt = H("symbol-registry"),
                            _t = H("symbols"),
                            wt = H("op-symbols"),
                            St = Object[vt],
                            kt = "function" == typeof dt,
                            Et = f.QObject,
                            Ot = !Et || !Et[vt] || !Et[vt].findChild,
                            Tt = m && v((function () {
                                return 7 != fe(ct({}, "a", {
                                    get: function () {
                                        return ct(this, "a", {
                                            value: 7
                                        }).a
                                    }
                                })).a
                            })) ? function (e, t, n) {
                                var r = ft(St, t);
                                r && delete St[t], ct(e, t, n), r && e !== St && ct(St, t, r)
                            } : ct,
                            At = function (e) {
                                var t = _t[e] = fe(dt[vt]);
                                return t._k = e, t
                            },
                            xt = kt && "symbol" == typeof dt.iterator ? function (e) {
                                return "symbol" == typeof e
                            } : function (e) {
                                return e instanceof dt
                            },
                            Rt = function (e, t, n) {
                                return e === St && Rt(wt, t, n), p(e), t = w(t, !0), p(n), L(_t, t) ? (n.enumerable ? (L(e, mt) && e[mt][t] && (e[mt][t] = !1), n = fe(n, {
                                    enumerable: O(0, !1)
                                })) : (L(e, mt) || ct(e, mt, O(1, {})), e[mt][t] = !0), Tt(e, t, n)) : ct(e, t, n)
                            },
                            Mt = function (e, t) {
                                p(e);
                                var n, r = Ye(t = j(t)),
                                    i = 0,
                                    o = r.length;
                                while (o > i) Rt(e, n = r[i++], t[n]);
                                return e
                            },
                            Dt = function (e, t) {
                                return void 0 === t ? fe(e) : Mt(fe(e), t)
                            },
                            Lt = function (e) {
                                var t = gt.call(this, e = w(e, !0));
                                return !(this === St && L(_t, e) && !L(wt, e)) && (!(t || !L(this, e) || !L(_t, e) || L(this, mt) && this[mt][e]) || t)
                            },
                            Bt = function (e, t) {
                                if (e = j(e), t = w(t, !0), e !== St || !L(_t, t) || L(wt, t)) {
                                    var n = ft(e, t);
                                    return !n || !L(_t, t) || L(e, mt) && e[mt][t] || (n.enumerable = !0), n
                                }
                            },
                            Pt = function (e) {
                                var t, n = lt(j(e)),
                                    r = [],
                                    i = 0;
                                while (n.length > i) L(_t, t = n[i++]) || t == mt || t == ut || r.push(t);
                                return r
                            },
                            Ct = function (e) {
                                var t, n = e === St,
                                    r = lt(n ? wt : j(e)),
                                    i = [],
                                    o = 0;
                                while (r.length > o) !L(_t, t = r[o++]) || n && !L(St, t) || i.push(_t[t]);
                                return i
                            };
                        kt || (dt = function () {
                            if (this instanceof dt) throw TypeError("Symbol is not a constructor!");
                            var e = J(arguments.length > 0 ? arguments[0] : void 0),
                                t = function (n) {
                                    this === St && t.call(wt, n), L(this, mt) && L(this[mt], e) && (this[mt][e] = !1), Tt(this, e, O(1, n))
                                };
                            return m && Ot && Tt(St, e, {
                                configurable: !0,
                                set: t
                            }), At(e)
                        }, M(dt[vt], "toString", (function () {
                            return this._k
                        })), st.f = Bt, E.f = Rt, Qe.f = it.f = Pt, Ke.f = Lt, qe.f = Ct, m && !u && M(St, "propertyIsEnumerable", Lt, !0), je.f = function (e) {
                            return At(ce(e))
                        }), R(R.G + R.W + R.F * !kt, {
                            Symbol: dt
                        });
                        for (var It = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), jt = 0; It.length > jt;) ce(It[jt++]);
                        for (It = ne(ce.store), jt = 0; It.length > jt;) ze(It[jt++]);
                        R(R.S + R.F * !kt, "Symbol", {
                            for: function (e) {
                                return L(bt, e += "") ? bt[e] : bt[e] = dt(e)
                            },
                            keyFor: function (e) {
                                if (xt(e)) return Ge(bt, e);
                                throw TypeError(e + " is not a symbol!")
                            },
                            useSetter: function () {
                                Ot = !0
                            },
                            useSimple: function () {
                                Ot = !1
                            }
                        }), R(R.S + R.F * !kt, "Object", {
                            create: Dt,
                            defineProperty: Rt,
                            defineProperties: Mt,
                            getOwnPropertyDescriptor: Bt,
                            getOwnPropertyNames: Pt,
                            getOwnPropertySymbols: Ct
                        }), ht && R(R.S + R.F * (!kt || v((function () {
                            var e = dt();
                            return "[null]" != pt([e]) || "{}" != pt({
                                a: e
                            }) || "{}" != pt(Object(e))
                        }))), "JSON", {
                            stringify: function (e) {
                                if (void 0 !== e && !xt(e)) {
                                    var t, n, r = [e],
                                        i = 1;
                                    while (arguments.length > i) r.push(arguments[i++]);
                                    return t = r[1], "function" == typeof t && (n = t), !n && Je(t) || (t = function (e, t) {
                                        if (n && (t = n.call(this, e, t)), !xt(t)) return t
                                    }), r[1] = t, pt.apply(ht, r)
                                }
                            }
                        }), dt[vt][yt] || T(dt[vt], yt, dt[vt].valueOf), he(dt, "Symbol"), he(Math, "Math", !0), he(f.JSON, "JSON", !0), ze("asyncIterator"), ze("observable");
                        var Nt = c.Symbol,
                            Ft = n((function (e) {
                                e.exports = {
                                    default: Nt,
                                    __esModule: !0
                                }
                            })),
                            Ut = n((function (e, t) {
                                t.__esModule = !0;
                                var n = o(Fe),
                                    r = o(Ft),
                                    i = "function" === typeof r.default && "symbol" === typeof n.default ? function (e) {
                                        return typeof e
                                    } : function (e) {
                                        return e && "function" === typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : typeof e
                                    };

                                function o(e) {
                                    return e && e.__esModule ? e : {
                                        default: e
                                    }
                                }
                                t.default = "function" === typeof r.default && "symbol" === i(n.default) ? function (e) {
                                    return "undefined" === typeof e ? "undefined" : i(e)
                                } : function (e) {
                                    return e && "function" === typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : "undefined" === typeof e ? "undefined" : i(e)
                                }
                            })),
                            Vt = t(Ut),
                            zt = n((function (e, t) {
                                t.__esModule = !0, t.default = function (e, t) {
                                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                                }
                            })),
                            Gt = t(zt);
                        R(R.S + R.F * !m, "Object", {
                            defineProperty: E.f
                        });
                        var Wt = c.Object,
                            qt = function (e, t, n) {
                                return Wt.defineProperty(e, t, n)
                            },
                            Ht = n((function (e) {
                                e.exports = {
                                    default: qt,
                                    __esModule: !0
                                }
                            })),
                            Kt = n((function (e, t) {
                                t.__esModule = !0;
                                var n = r(Ht);

                                function r(e) {
                                    return e && e.__esModule ? e : {
                                        default: e
                                    }
                                }
                                t.default = function () {
                                    function e(e, t) {
                                        for (var r = 0; r < t.length; r++) {
                                            var i = t[r];
                                            i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), (0, n.default)(e, i.key, i)
                                        }
                                    }
                                    return function (t, n, r) {
                                        return n && e(t.prototype, n), r && e(t, r), t
                                    }
                                }()
                            })),
                            Yt = t(Kt),
                            Jt = Object.assign,
                            Xt = !Jt || v((function () {
                                var e = {},
                                    t = {},
                                    n = Symbol(),
                                    r = "abcdefghijklmnopqrst";
                                return e[n] = 7, r.split("").forEach((function (e) {
                                    t[e] = e
                                })), 7 != Jt({}, e)[n] || Object.keys(Jt({}, t)).join("") != r
                            })) ? function (e, t) {
                                var n = me(e),
                                    r = arguments.length,
                                    i = 1,
                                    o = qe.f,
                                    a = Ke.f;
                                while (r > i) {
                                    var s, u = I(arguments[i++]),
                                        f = o ? ne(u).concat(o(u)) : ne(u),
                                        c = f.length,
                                        l = 0;
                                    while (c > l) a.call(u, s = f[l++]) && (n[s] = u[s])
                                }
                                return n
                            } : Jt;
                        R(R.S + R.F, "Object", {
                            assign: Xt
                        });
                        var $t = c.Object.assign,
                            Qt = n((function (e) {
                                e.exports = {
                                    default: $t,
                                    __esModule: !0
                                }
                            })),
                            Zt = t(Qt);
                        R(R.S, "Object", {
                            create: fe
                        });
                        var en = c.Object,
                            tn = function (e, t) {
                                return en.create(e, t)
                            },
                            nn = n((function (e) {
                                e.exports = {
                                    default: tn,
                                    __esModule: !0
                                }
                            })),
                            rn = t(nn),
                            on = function (e, t) {
                                var n = (c.Object || {})[e] || Object[e],
                                    r = {};
                                r[e] = t(n), R(R.S + R.F * v((function () {
                                    n(1)
                                })), "Object", r)
                            };
                        on("keys", (function () {
                            return function (e) {
                                return ne(me(e))
                            }
                        }));
                        var an = c.Object.keys,
                            sn = (n((function (e) {
                                e.exports = {
                                    default: an,
                                    __esModule: !0
                                }
                            })), Math.floor),
                            un = function (e) {
                                return !h(e) && isFinite(e) && sn(e) === e
                            };
                        R(R.S, "Number", {
                            isInteger: un
                        });
                        var fn = c.Number.isInteger,
                            cn = (n((function (e) {
                                e.exports = {
                                    default: fn,
                                    __esModule: !0
                                }
                            })), "\t\n\v\f\r   ᠎             　\u2028\u2029\ufeff"),
                            ln = "[" + cn + "]",
                            dn = "​",
                            hn = RegExp("^" + ln + ln + "*"),
                            pn = RegExp(ln + ln + "*$"),
                            vn = function (e, t, n) {
                                var r = {},
                                    i = v((function () {
                                        return !!cn[e]() || dn[e]() != dn
                                    })),
                                    o = r[e] = i ? t(mn) : cn[e];
                                n && (r[n] = o), R(R.P + R.F * i, "String", r)
                            },
                            mn = vn.trim = function (e, t) {
                                return e = String(a(e)), 1 & t && (e = e.replace(hn, "")), 2 & t && (e = e.replace(pn, "")), e
                            },
                            yn = vn,
                            gn = f.parseFloat,
                            bn = yn.trim,
                            _n = 1 / gn(cn + "-0") !== -1 / 0 ? function (e) {
                                var t = bn(String(e), 3),
                                    n = gn(t);
                                return 0 === n && "-" == t.charAt(0) ? -0 : n
                            } : gn;
                        R(R.S + R.F * (Number.parseFloat != _n), "Number", {
                            parseFloat: _n
                        });
                        var wn = parseFloat;
                        n((function (e) {
                            e.exports = {
                                default: wn,
                                __esModule: !0
                            }
                        }));

                        function Sn(e) {
                            return Array.isArray(e)
                        }

                        function kn(e) {
                            return "function" === typeof e
                        }

                        function En(e) {
                            return Object(e) === e && "[object Object]" === String(e) && !kn(e) && !Sn(e)
                        }
                        var On = rn(null);

                        function Tn(e, t) {
                            var n = e.__evt_id;
                            n || (Object.defineProperty(e, "__evt_id", {
                                writable: !0,
                                enumerable: !1,
                                configurable: !0
                            }), n = e.__evt_id = ++On.count);
                            var r = n + "_" + t,
                                i = On[r];
                            return i || (i = On[r] = []), i
                        }

                        function An(e, t, n) {
                            var r = rn(null);
                            r.type = t, r.target = e, n && Zt(r, En(n) ? n : {
                                data: n
                            }), Tn(e, t).forEach((function (t) {
                                (t[1] || t[0]).apply(e, [r])
                            }))
                        }

                        function xn(e, t, n) {
                            var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3],
                                i = arguments[4];
                            kn(r) && !i && (i = r, r = void 0);
                            var o = [n, void 0, r];
                            r && !i && (i = function () {
                                Rn(e, t, n, r);
                                for (var i = arguments.length, o = Array(i), a = 0; a < i; a++) o[a] = arguments[a];
                                n.apply(e, o)
                            }), i && (o[1] = i), Tn(e, t).push(o)
                        }

                        function Rn(e, t, n) {
                            var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3],
                                i = Tn(e, t);
                            if (n || r) {
                                var o = -1,
                                    a = void 0;
                                return i.find((function (e, t) {
                                    if ((!n || e[0] === n) && (!r || e[2])) return o = t, a = e[1], !0
                                })), -1 !== o && i.splice(o, 1), a
                            }
                            i.length = 0
                        }
                        On.count = 0;
                        var Mn = function () {
                            function e(t, n) {
                                var r = this;
                                if (Gt(this, e), Object.defineProperty(this, "__target", {
                                        writable: !0,
                                        enumerable: !1,
                                        configurable: !0
                                    }), this.__target = this, t) {
                                    if ("object" !== ("undefined" === typeof t ? "undefined" : Vt(t))) throw new Error("CusEvent target are not object");
                                    this.__target = t, n && ["on", "once", "off", "emit"].forEach((function (e) {
                                        t[e] = r[e]
                                    }))
                                }
                            }
                            return Yt(e, [{
                                key: "on",
                                value: function (e, t) {
                                    var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
                                    return xn(this.__target, e, t, n), this
                                }
                            }, {
                                key: "once",
                                value: function (e, t) {
                                    return this.on(e, t, !0)
                                }
                            }, {
                                key: "off",
                                value: function (e, t) {
                                    var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
                                    return Rn(this.__target, e, t, n), this
                                }
                            }, {
                                key: "emit",
                                value: function (e, t) {
                                    return An(this.__target, e, {
                                        data: t
                                    }), this
                                }
                            }]), e
                        }();
                        e.emitEventCache = An, e.addEventCache = xn, e.removeEventCache = Rn, e.CustEvent = Mn, Object.defineProperty(e, "__esModule", {
                            value: !0
                        })
                    }))
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    t.ERRORNO = {
                        NET_ERROR: 100,
                        CODEC_ERROR: 101,
                        CANNOT_SEEK: 102,
                        ENDOFSTREAM_ERROR: 103,
                        MEDIASOURCE_ERROR: 104,
                        SOURCEBUFFER_ERROR: 105,
                        SBABORT_ERROR: 106,
                        APPENDBUFFER_ERROR: 107
                    }
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    t.PLAYER_EVENTS = {
                        LOADER_OPEN: "loader-open",
                        LOADER_CHUNK_ARRIVAL: "loader-chunk-arrival",
                        MEDIA_DEMUX_FLV: "media-demux-flv",
                        MEDIA_SEGMENT_INIT: "media-segment-init",
                        MEDIA_INFO: "media-info",
                        MEDIA_SEGMENT: "media-segment",
                        PLAYING: "playing",
                        CANPLAY: "canplay",
                        TIMEUPDATE: "timeupdate"
                    }
                }, function (e, t, n) {
                    "use strict";

                    function r(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var i = function e(t) {
                        r(this, e), this.type = t
                    };
                    t.default = i
                }, function (e, t, n) {
                    (function (t, n) {
                        e.exports = n()
                    })(0, (function () {
                        "use strict";

                        function e(e) {
                            return e && e.__esModule ? e["default"] : e
                        }

                        function t(e, t) {
                            return t = {
                                exports: {}
                            }, e(t, t.exports), t.exports
                        }
                        var n = t((function (e, t) {
                                t.__esModule = !0, t.default = function (e, t) {
                                    if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                                }
                            })),
                            r = e(n),
                            i = t((function (e) {
                                var t = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
                                "number" == typeof __g && (__g = t)
                            })),
                            o = t((function (e) {
                                var t = e.exports = {
                                    version: "2.4.0"
                                };
                                "number" == typeof __e && (__e = t)
                            })),
                            a = function (e) {
                                if ("function" != typeof e) throw TypeError(e + " is not a function!");
                                return e
                            },
                            s = function (e, t, n) {
                                if (a(e), void 0 === t) return e;
                                switch (n) {
                                    case 1:
                                        return function (n) {
                                            return e.call(t, n)
                                        };
                                    case 2:
                                        return function (n, r) {
                                            return e.call(t, n, r)
                                        };
                                    case 3:
                                        return function (n, r, i) {
                                            return e.call(t, n, r, i)
                                        }
                                }
                                return function () {
                                    return e.apply(t, arguments)
                                }
                            },
                            u = function (e) {
                                return "object" === typeof e ? null !== e : "function" === typeof e
                            },
                            f = function (e) {
                                if (!u(e)) throw TypeError(e + " is not an object!");
                                return e
                            },
                            c = function (e) {
                                try {
                                    return !!e()
                                } catch (t) {
                                    return !0
                                }
                            },
                            l = !c((function () {
                                return 7 != Object.defineProperty({}, "a", {
                                    get: function () {
                                        return 7
                                    }
                                }).a
                            })),
                            d = i.document,
                            h = u(d) && u(d.createElement),
                            p = function (e) {
                                return h ? d.createElement(e) : {}
                            },
                            v = !l && !c((function () {
                                return 7 != Object.defineProperty(p("div"), "a", {
                                    get: function () {
                                        return 7
                                    }
                                }).a
                            })),
                            m = function (e, t) {
                                if (!u(e)) return e;
                                var n, r;
                                if (t && "function" == typeof (n = e.toString) && !u(r = n.call(e))) return r;
                                if ("function" == typeof (n = e.valueOf) && !u(r = n.call(e))) return r;
                                if (!t && "function" == typeof (n = e.toString) && !u(r = n.call(e))) return r;
                                throw TypeError("Can't convert object to primitive value")
                            },
                            y = Object.defineProperty,
                            g = l ? Object.defineProperty : function (e, t, n) {
                                if (f(e), t = m(t, !0), f(n), v) try {
                                    return y(e, t, n)
                                } catch (r) {}
                                if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
                                return "value" in n && (e[t] = n.value), e
                            },
                            b = {
                                f: g
                            },
                            _ = function (e, t) {
                                return {
                                    enumerable: !(1 & e),
                                    configurable: !(2 & e),
                                    writable: !(4 & e),
                                    value: t
                                }
                            },
                            w = l ? function (e, t, n) {
                                return b.f(e, t, _(1, n))
                            } : function (e, t, n) {
                                return e[t] = n, e
                            },
                            S = "prototype",
                            k = function (e, t, n) {
                                var r, a, u, f = e & k.F,
                                    c = e & k.G,
                                    l = e & k.S,
                                    d = e & k.P,
                                    h = e & k.B,
                                    p = e & k.W,
                                    v = c ? o : o[t] || (o[t] = {}),
                                    m = v[S],
                                    y = c ? i : l ? i[t] : (i[t] || {})[S];
                                for (r in c && (n = t), n) a = !f && y && void 0 !== y[r], a && r in v || (u = a ? y[r] : n[r], v[r] = c && "function" != typeof y[r] ? n[r] : h && a ? s(u, i) : p && y[r] == u ? function (e) {
                                    var t = function (t, n, r) {
                                        if (this instanceof e) {
                                            switch (arguments.length) {
                                                case 0:
                                                    return new e;
                                                case 1:
                                                    return new e(t);
                                                case 2:
                                                    return new e(t, n)
                                            }
                                            return new e(t, n, r)
                                        }
                                        return e.apply(this, arguments)
                                    };
                                    return t[S] = e[S], t
                                }(u) : d && "function" == typeof u ? s(Function.call, u) : u, d && ((v.virtual || (v.virtual = {}))[r] = u, e & k.R && m && !m[r] && w(m, r, u)))
                            };
                        k.F = 1, k.G = 2, k.S = 4, k.P = 8, k.B = 16, k.W = 32, k.U = 64, k.R = 128;
                        var E = k;
                        E(E.S + E.F * !l, "Object", {
                            defineProperty: b.f
                        });
                        var O = o.Object,
                            T = function (e, t, n) {
                                return O.defineProperty(e, t, n)
                            },
                            A = t((function (e) {
                                e.exports = {
                                    default: T,
                                    __esModule: !0
                                }
                            })),
                            x = t((function (e, t) {
                                t.__esModule = !0;
                                var n = r(A);

                                function r(e) {
                                    return e && e.__esModule ? e : {
                                        default: e
                                    }
                                }
                                t.default = function () {
                                    function e(e, t) {
                                        for (var r = 0; r < t.length; r++) {
                                            var i = t[r];
                                            i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), (0, n.default)(e, i.key, i)
                                        }
                                    }
                                    return function (t, n, r) {
                                        return n && e(t.prototype, n), r && e(t, r), t
                                    }
                                }()
                            })),
                            R = e(x),
                            M = Math.ceil,
                            D = Math.floor,
                            L = function (e) {
                                return isNaN(e = +e) ? 0 : (e > 0 ? D : M)(e)
                            },
                            B = function (e) {
                                if (void 0 == e) throw TypeError("Can't call method on  " + e);
                                return e
                            },
                            P = function (e) {
                                return function (t, n) {
                                    var r, i, o = String(B(t)),
                                        a = L(n),
                                        s = o.length;
                                    return a < 0 || a >= s ? e ? "" : void 0 : (r = o.charCodeAt(a), r < 55296 || r > 56319 || a + 1 === s || (i = o.charCodeAt(a + 1)) < 56320 || i > 57343 ? e ? o.charAt(a) : r : e ? o.slice(a, a + 2) : i - 56320 + (r - 55296 << 10) + 65536)
                                }
                            },
                            C = !0,
                            I = w,
                            j = {}.hasOwnProperty,
                            N = function (e, t) {
                                return j.call(e, t)
                            },
                            F = {},
                            U = {}.toString,
                            V = function (e) {
                                return U.call(e).slice(8, -1)
                            },
                            z = Object("z").propertyIsEnumerable(0) ? Object : function (e) {
                                return "String" == V(e) ? e.split("") : Object(e)
                            },
                            G = function (e) {
                                return z(B(e))
                            },
                            W = Math.min,
                            q = function (e) {
                                return e > 0 ? W(L(e), 9007199254740991) : 0
                            },
                            H = Math.max,
                            K = Math.min,
                            Y = function (e, t) {
                                return e = L(e), e < 0 ? H(e + t, 0) : K(e, t)
                            },
                            J = function (e) {
                                return function (t, n, r) {
                                    var i, o = G(t),
                                        a = q(o.length),
                                        s = Y(r, a);
                                    if (e && n != n) {
                                        while (a > s)
                                            if (i = o[s++], i != i) return !0
                                    } else
                                        for (; a > s; s++)
                                            if ((e || s in o) && o[s] === n) return e || s || 0;
                                    return !e && -1
                                }
                            },
                            X = "__core-js_shared__",
                            $ = i[X] || (i[X] = {}),
                            Q = function (e) {
                                return $[e] || ($[e] = {})
                            },
                            Z = 0,
                            ee = Math.random(),
                            te = function (e) {
                                return "Symbol(".concat(void 0 === e ? "" : e, ")_", (++Z + ee).toString(36))
                            },
                            ne = Q("keys"),
                            re = function (e) {
                                return ne[e] || (ne[e] = te(e))
                            },
                            ie = J(!1),
                            oe = re("IE_PROTO"),
                            ae = function (e, t) {
                                var n, r = G(e),
                                    i = 0,
                                    o = [];
                                for (n in r) n != oe && N(r, n) && o.push(n);
                                while (t.length > i) N(r, n = t[i++]) && (~ie(o, n) || o.push(n));
                                return o
                            },
                            se = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),
                            ue = Object.keys || function (e) {
                                return ae(e, se)
                            },
                            fe = l ? Object.defineProperties : function (e, t) {
                                f(e);
                                var n, r = ue(t),
                                    i = r.length,
                                    o = 0;
                                while (i > o) b.f(e, n = r[o++], t[n]);
                                return e
                            },
                            ce = i.document && document.documentElement,
                            le = re("IE_PROTO"),
                            de = function () {},
                            he = "prototype",
                            pe = function () {
                                var e, t = p("iframe"),
                                    n = se.length,
                                    r = "<",
                                    i = ">";
                                t.style.display = "none", ce.appendChild(t), t.src = "javascript:", e = t.contentWindow.document, e.open(), e.write(r + "script" + i + "document.F=Object" + r + "/script" + i), e.close(), pe = e.F;
                                while (n--) delete pe[he][se[n]];
                                return pe()
                            },
                            ve = Object.create || function (e, t) {
                                var n;
                                return null !== e ? (de[he] = f(e), n = new de, de[he] = null, n[le] = e) : n = pe(), void 0 === t ? n : fe(n, t)
                            },
                            me = t((function (e) {
                                var t = Q("wks"),
                                    n = i.Symbol,
                                    r = "function" == typeof n,
                                    o = e.exports = function (e) {
                                        return t[e] || (t[e] = r && n[e] || (r ? n : te)("Symbol." + e))
                                    };
                                o.store = t
                            })),
                            ye = b.f,
                            ge = me("toStringTag"),
                            be = function (e, t, n) {
                                e && !N(e = n ? e : e.prototype, ge) && ye(e, ge, {
                                    configurable: !0,
                                    value: t
                                })
                            },
                            _e = {};
                        w(_e, me("iterator"), (function () {
                            return this
                        }));
                        var we = function (e, t, n) {
                                e.prototype = ve(_e, {
                                    next: _(1, n)
                                }), be(e, t + " Iterator")
                            },
                            Se = function (e) {
                                return Object(B(e))
                            },
                            ke = re("IE_PROTO"),
                            Ee = Object.prototype,
                            Oe = Object.getPrototypeOf || function (e) {
                                return e = Se(e), N(e, ke) ? e[ke] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? Ee : null
                            },
                            Te = me("iterator"),
                            Ae = !([].keys && "next" in [].keys()),
                            xe = "@@iterator",
                            Re = "keys",
                            Me = "values",
                            De = function () {
                                return this
                            },
                            Le = function (e, t, n, r, i, o, a) {
                                we(n, t, r);
                                var s, u, f, c = function (e) {
                                        if (!Ae && e in p) return p[e];
                                        switch (e) {
                                            case Re:
                                                return function () {
                                                    return new n(this, e)
                                                };
                                            case Me:
                                                return function () {
                                                    return new n(this, e)
                                                }
                                        }
                                        return function () {
                                            return new n(this, e)
                                        }
                                    },
                                    l = t + " Iterator",
                                    d = i == Me,
                                    h = !1,
                                    p = e.prototype,
                                    v = p[Te] || p[xe] || i && p[i],
                                    m = v || c(i),
                                    y = i ? d ? c("entries") : m : void 0,
                                    g = "Array" == t && p.entries || v;
                                if (g && (f = Oe(g.call(new e)), f !== Object.prototype && (be(f, l, !0), C || N(f, Te) || w(f, Te, De))), d && v && v.name !== Me && (h = !0, m = function () {
                                        return v.call(this)
                                    }), C && !a || !Ae && !h && p[Te] || w(p, Te, m), F[t] = m, F[l] = De, i)
                                    if (s = {
                                            values: d ? m : c(Me),
                                            keys: o ? m : c(Re),
                                            entries: y
                                        }, a)
                                        for (u in s) u in p || I(p, u, s[u]);
                                    else E(E.P + E.F * (Ae || h), t, s);
                                return s
                            },
                            Be = P(!0);
                        Le(String, "String", (function (e) {
                            this._t = String(e), this._i = 0
                        }), (function () {
                            var e, t = this._t,
                                n = this._i;
                            return n >= t.length ? {
                                value: void 0,
                                done: !0
                            } : (e = Be(t, n), this._i += e.length, {
                                value: e,
                                done: !1
                            })
                        }));
                        var Pe = function () {},
                            Ce = function (e, t) {
                                return {
                                    value: t,
                                    done: !!e
                                }
                            };
                        Le(Array, "Array", (function (e, t) {
                            this._t = G(e), this._i = 0, this._k = t
                        }), (function () {
                            var e = this._t,
                                t = this._k,
                                n = this._i++;
                            return !e || n >= e.length ? (this._t = void 0, Ce(1)) : Ce(0, "keys" == t ? n : "values" == t ? e[n] : [n, e[n]])
                        }), "values");
                        F.Arguments = F.Array, Pe("keys"), Pe("values"), Pe("entries");
                        for (var Ie = me("toStringTag"), je = ["NodeList", "DOMTokenList", "MediaList", "StyleSheetList", "CSSRuleList"], Ne = 0; Ne < 5; Ne++) {
                            var Fe = je[Ne],
                                Ue = i[Fe],
                                Ve = Ue && Ue.prototype;
                            Ve && !Ve[Ie] && w(Ve, Ie, Fe), F[Fe] = F.Array
                        }
                        var ze = me,
                            Ge = {
                                f: ze
                            },
                            We = Ge.f("iterator"),
                            qe = t((function (e) {
                                e.exports = {
                                    default: We,
                                    __esModule: !0
                                }
                            })),
                            He = t((function (e) {
                                var t = te("meta"),
                                    n = b.f,
                                    r = 0,
                                    i = Object.isExtensible || function () {
                                        return !0
                                    },
                                    o = !c((function () {
                                        return i(Object.preventExtensions({}))
                                    })),
                                    a = function (e) {
                                        n(e, t, {
                                            value: {
                                                i: "O" + ++r,
                                                w: {}
                                            }
                                        })
                                    },
                                    s = function (e, n) {
                                        if (!u(e)) return "symbol" == typeof e ? e : ("string" == typeof e ? "S" : "P") + e;
                                        if (!N(e, t)) {
                                            if (!i(e)) return "F";
                                            if (!n) return "E";
                                            a(e)
                                        }
                                        return e[t].i
                                    },
                                    f = function (e, n) {
                                        if (!N(e, t)) {
                                            if (!i(e)) return !0;
                                            if (!n) return !1;
                                            a(e)
                                        }
                                        return e[t].w
                                    },
                                    l = function (e) {
                                        return o && d.NEED && i(e) && !N(e, t) && a(e), e
                                    },
                                    d = e.exports = {
                                        KEY: t,
                                        NEED: !1,
                                        fastKey: s,
                                        getWeak: f,
                                        onFreeze: l
                                    }
                            })),
                            Ke = b.f,
                            Ye = function (e) {
                                var t = o.Symbol || (o.Symbol = C ? {} : i.Symbol || {});
                                "_" == e.charAt(0) || e in t || Ke(t, e, {
                                    value: Ge.f(e)
                                })
                            },
                            Je = function (e, t) {
                                var n, r = G(e),
                                    i = ue(r),
                                    o = i.length,
                                    a = 0;
                                while (o > a)
                                    if (r[n = i[a++]] === t) return n
                            },
                            Xe = Object.getOwnPropertySymbols,
                            $e = {
                                f: Xe
                            },
                            Qe = {}.propertyIsEnumerable,
                            Ze = {
                                f: Qe
                            },
                            et = function (e) {
                                var t = ue(e),
                                    n = $e.f;
                                if (n) {
                                    var r, i = n(e),
                                        o = Ze.f,
                                        a = 0;
                                    while (i.length > a) o.call(e, r = i[a++]) && t.push(r)
                                }
                                return t
                            },
                            tt = Array.isArray || function (e) {
                                return "Array" == V(e)
                            },
                            nt = se.concat("length", "prototype"),
                            rt = Object.getOwnPropertyNames || function (e) {
                                return ae(e, nt)
                            },
                            it = {
                                f: rt
                            },
                            ot = it.f,
                            at = {}.toString,
                            st = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
                            ut = function (e) {
                                try {
                                    return ot(e)
                                } catch (t) {
                                    return st.slice()
                                }
                            },
                            ft = function (e) {
                                return st && "[object Window]" == at.call(e) ? ut(e) : ot(G(e))
                            },
                            ct = {
                                f: ft
                            },
                            lt = Object.getOwnPropertyDescriptor,
                            dt = l ? lt : function (e, t) {
                                if (e = G(e), t = m(t, !0), v) try {
                                    return lt(e, t)
                                } catch (n) {}
                                if (N(e, t)) return _(!Ze.f.call(e, t), e[t])
                            },
                            ht = {
                                f: dt
                            },
                            pt = He.KEY,
                            vt = ht.f,
                            mt = b.f,
                            yt = ct.f,
                            gt = i.Symbol,
                            bt = i.JSON,
                            _t = bt && bt.stringify,
                            wt = "prototype",
                            St = me("_hidden"),
                            kt = me("toPrimitive"),
                            Et = {}.propertyIsEnumerable,
                            Ot = Q("symbol-registry"),
                            Tt = Q("symbols"),
                            At = Q("op-symbols"),
                            xt = Object[wt],
                            Rt = "function" == typeof gt,
                            Mt = i.QObject,
                            Dt = !Mt || !Mt[wt] || !Mt[wt].findChild,
                            Lt = l && c((function () {
                                return 7 != ve(mt({}, "a", {
                                    get: function () {
                                        return mt(this, "a", {
                                            value: 7
                                        }).a
                                    }
                                })).a
                            })) ? function (e, t, n) {
                                var r = vt(xt, t);
                                r && delete xt[t], mt(e, t, n), r && e !== xt && mt(xt, t, r)
                            } : mt,
                            Bt = function (e) {
                                var t = Tt[e] = ve(gt[wt]);
                                return t._k = e, t
                            },
                            Pt = Rt && "symbol" == typeof gt.iterator ? function (e) {
                                return "symbol" == typeof e
                            } : function (e) {
                                return e instanceof gt
                            },
                            Ct = function (e, t, n) {
                                return e === xt && Ct(At, t, n), f(e), t = m(t, !0), f(n), N(Tt, t) ? (n.enumerable ? (N(e, St) && e[St][t] && (e[St][t] = !1), n = ve(n, {
                                    enumerable: _(0, !1)
                                })) : (N(e, St) || mt(e, St, _(1, {})), e[St][t] = !0), Lt(e, t, n)) : mt(e, t, n)
                            },
                            It = function (e, t) {
                                f(e);
                                var n, r = et(t = G(t)),
                                    i = 0,
                                    o = r.length;
                                while (o > i) Ct(e, n = r[i++], t[n]);
                                return e
                            },
                            jt = function (e, t) {
                                return void 0 === t ? ve(e) : It(ve(e), t)
                            },
                            Nt = function (e) {
                                var t = Et.call(this, e = m(e, !0));
                                return !(this === xt && N(Tt, e) && !N(At, e)) && (!(t || !N(this, e) || !N(Tt, e) || N(this, St) && this[St][e]) || t)
                            },
                            Ft = function (e, t) {
                                if (e = G(e), t = m(t, !0), e !== xt || !N(Tt, t) || N(At, t)) {
                                    var n = vt(e, t);
                                    return !n || !N(Tt, t) || N(e, St) && e[St][t] || (n.enumerable = !0), n
                                }
                            },
                            Ut = function (e) {
                                var t, n = yt(G(e)),
                                    r = [],
                                    i = 0;
                                while (n.length > i) N(Tt, t = n[i++]) || t == St || t == pt || r.push(t);
                                return r
                            },
                            Vt = function (e) {
                                var t, n = e === xt,
                                    r = yt(n ? At : G(e)),
                                    i = [],
                                    o = 0;
                                while (r.length > o) !N(Tt, t = r[o++]) || n && !N(xt, t) || i.push(Tt[t]);
                                return i
                            };
                        Rt || (gt = function () {
                            if (this instanceof gt) throw TypeError("Symbol is not a constructor!");
                            var e = te(arguments.length > 0 ? arguments[0] : void 0),
                                t = function (n) {
                                    this === xt && t.call(At, n), N(this, St) && N(this[St], e) && (this[St][e] = !1), Lt(this, e, _(1, n))
                                };
                            return l && Dt && Lt(xt, e, {
                                configurable: !0,
                                set: t
                            }), Bt(e)
                        }, I(gt[wt], "toString", (function () {
                            return this._k
                        })), ht.f = Ft, b.f = Ct, it.f = ct.f = Ut, Ze.f = Nt, $e.f = Vt, l && !C && I(xt, "propertyIsEnumerable", Nt, !0), Ge.f = function (e) {
                            return Bt(me(e))
                        }), E(E.G + E.W + E.F * !Rt, {
                            Symbol: gt
                        });
                        for (var zt = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), Gt = 0; zt.length > Gt;) me(zt[Gt++]);
                        for (zt = ue(me.store), Gt = 0; zt.length > Gt;) Ye(zt[Gt++]);
                        E(E.S + E.F * !Rt, "Symbol", {
                            for: function (e) {
                                return N(Ot, e += "") ? Ot[e] : Ot[e] = gt(e)
                            },
                            keyFor: function (e) {
                                if (Pt(e)) return Je(Ot, e);
                                throw TypeError(e + " is not a symbol!")
                            },
                            useSetter: function () {
                                Dt = !0
                            },
                            useSimple: function () {
                                Dt = !1
                            }
                        }), E(E.S + E.F * !Rt, "Object", {
                            create: jt,
                            defineProperty: Ct,
                            defineProperties: It,
                            getOwnPropertyDescriptor: Ft,
                            getOwnPropertyNames: Ut,
                            getOwnPropertySymbols: Vt
                        }), bt && E(E.S + E.F * (!Rt || c((function () {
                            var e = gt();
                            return "[null]" != _t([e]) || "{}" != _t({
                                a: e
                            }) || "{}" != _t(Object(e))
                        }))), "JSON", {
                            stringify: function (e) {
                                if (void 0 !== e && !Pt(e)) {
                                    var t, n, r = [e],
                                        i = 1;
                                    while (arguments.length > i) r.push(arguments[i++]);
                                    return t = r[1], "function" == typeof t && (n = t), !n && tt(t) || (t = function (e, t) {
                                        if (n && (t = n.call(this, e, t)), !Pt(t)) return t
                                    }), r[1] = t, _t.apply(bt, r)
                                }
                            }
                        }), gt[wt][kt] || w(gt[wt], kt, gt[wt].valueOf), be(gt, "Symbol"), be(Math, "Math", !0), be(i.JSON, "JSON", !0), Ye("asyncIterator"), Ye("observable");
                        var Wt = o.Symbol,
                            qt = t((function (e) {
                                e.exports = {
                                    default: Wt,
                                    __esModule: !0
                                }
                            })),
                            Ht = t((function (e, t) {
                                t.__esModule = !0;
                                var n = o(qe),
                                    r = o(qt),
                                    i = "function" === typeof r.default && "symbol" === typeof n.default ? function (e) {
                                        return typeof e
                                    } : function (e) {
                                        return e && "function" === typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : typeof e
                                    };

                                function o(e) {
                                    return e && e.__esModule ? e : {
                                        default: e
                                    }
                                }
                                t.default = "function" === typeof r.default && "symbol" === i(n.default) ? function (e) {
                                    return "undefined" === typeof e ? "undefined" : i(e)
                                } : function (e) {
                                    return e && "function" === typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : "undefined" === typeof e ? "undefined" : i(e)
                                }
                            })),
                            Kt = e(Ht),
                            Yt = function (e, t) {
                                var n = (o.Object || {})[e] || Object[e],
                                    r = {};
                                r[e] = t(n), E(E.S + E.F * c((function () {
                                    n(1)
                                })), "Object", r)
                            };
                        Yt("keys", (function () {
                            return function (e) {
                                return ue(Se(e))
                            }
                        }));
                        var Jt = o.Object.keys,
                            Xt = (t((function (e) {
                                e.exports = {
                                    default: Jt,
                                    __esModule: !0
                                }
                            })), Math.floor),
                            $t = function (e) {
                                return !u(e) && isFinite(e) && Xt(e) === e
                            };
                        E(E.S, "Number", {
                            isInteger: $t
                        });
                        var Qt = o.Number.isInteger,
                            Zt = (t((function (e) {
                                e.exports = {
                                    default: Qt,
                                    __esModule: !0
                                }
                            })), "\t\n\v\f\r   ᠎             　\u2028\u2029\ufeff"),
                            en = "[" + Zt + "]",
                            tn = "​",
                            nn = RegExp("^" + en + en + "*"),
                            rn = RegExp(en + en + "*$"),
                            on = function (e, t, n) {
                                var r = {},
                                    i = c((function () {
                                        return !!Zt[e]() || tn[e]() != tn
                                    })),
                                    o = r[e] = i ? t(an) : Zt[e];
                                n && (r[n] = o), E(E.P + E.F * i, "String", r)
                            },
                            an = on.trim = function (e, t) {
                                return e = String(B(e)), 1 & t && (e = e.replace(nn, "")), 2 & t && (e = e.replace(rn, "")), e
                            },
                            sn = on,
                            un = i.parseFloat,
                            fn = sn.trim,
                            cn = 1 / un(Zt + "-0") !== -1 / 0 ? function (e) {
                                var t = fn(String(e), 3),
                                    n = un(t);
                                return 0 === n && "-" == t.charAt(0) ? -0 : n
                            } : un;
                        E(E.S + E.F * (Number.parseFloat != cn), "Number", {
                            parseFloat: cn
                        });
                        var ln = parseFloat;
                        t((function (e) {
                            e.exports = {
                                default: ln,
                                __esModule: !0
                            }
                        }));

                        function dn(e) {
                            return "string" === typeof e || e instanceof String
                        }

                        function hn(e, t) {
                            if (!dn(e)) throw new TypeError("Log's method only acccept string as argument, but not " + e + " in " + ("undefined" === typeof e ? "undefined" : Kt(e)));
                            return dn(t) ? (e = pn.FORCE_GLOBAL_TAG ? pn.GLOBAL_TAG : e || pn.GLOBAL_TAG, "[" + e + "] > " + t) : "[" + pn.GLOBAL_TAG + "] > " + e
                        }
                        var pn = function () {
                            function e() {
                                r(this, e)
                            }
                            return R(e, null, [{
                                key: "error",
                                value: function (t, n) {
                                    e.ENABLE_ERROR && (console.error || console.warn || console.log).call(console, hn(t, n))
                                }
                            }, {
                                key: "info",
                                value: function (t, n) {
                                    e.ENABLE_INFO && (console.info || console.log).call(console, hn(t, n))
                                }
                            }, {
                                key: "warn",
                                value: function (t, n) {
                                    e.ENABLE_WARN && (console.warn || console.log).call(console, hn(t, n))
                                }
                            }, {
                                key: "debug",
                                value: function (t, n) {
                                    e.ENABLE_DEBUG && (console.debug || console.log).call(console, hn(t, n))
                                }
                            }, {
                                key: "verbose",
                                value: function (t, n) {
                                    e.ENABLE_VERBOSE && console.log(hn(t, n))
                                }
                            }]), e
                        }();
                        return pn.GLOBAL_TAG = "chimee", pn.FORCE_GLOBAL_TAG = !1, pn.ENABLE_ERROR = !0, pn.ENABLE_INFO = !0, pn.ENABLE_WARN = !0, pn.ENABLE_DEBUG = !0, pn.ENABLE_VERBOSE = !0, pn
                    }))
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(16),
                        o = p(i),
                        a = n(18),
                        s = p(a),
                        u = n(19),
                        f = p(u),
                        c = n(20),
                        l = p(c),
                        d = n(0),
                        h = n(2);

                    function p(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function v(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function m(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function y(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var g = function (e) {
                        function t(e) {
                            v(this, t);
                            var n = m(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return n.loader = null, n.config = {}, n.config = e || {}, n.bufferSize = 3145728, n.cacheBuffer = new ArrayBuffer(n.bufferSize), n.cacheRemain = 0, n.stashByteStart = 0, n.enableStash = !0, n.stashSize = n.config.stashSize || 393216, n.resumeFrom = 0, n.currentRange = {}, n.totalReceive = 0, n.seekPonit = void 0, n.timer = null, n.heartBeatInterval = null, n.preTotalReceive = 0, n.seekLock = !1, n.webSocketURLReg = /wss?:\/\/(.+?)/, n.selectLoader(), n.bindEvent(), n
                        }
                        return y(t, e), r(t, [{
                            key: "selectLoader",
                            value: function () {
                                var e = this.config,
                                    t = this.config.src;
                                this.webSocketURLReg.test(t) ? this.loader = new f.default(t, e, this.queryHandle) : o.default.isSupport() ? this.loader = new o.default(t, e, this.queryHandle) : l.default.isSupport() ? this.loader = new l.default(t, e, this.queryHandle) : s.default.isSupport() && (this.loader = new s.default(t, e, this.queryHandle)), this.loader.arrivalDataCallback = this.onLoaderChunkArrival.bind(this)
                            }
                        }, {
                            key: "bindEvent",
                            value: function () {
                                var e = this;
                                this.loader.on("end", (function () {
                                    var t = e.cacheBuffer.slice(0, e.cacheRemain);
                                    e.arrivalDataCallback(t, e.stashByteStart), e.emit("end")
                                })), ["error", "performance"].forEach((function (t) {
                                    e.loader.on(t, (function (n) {
                                        e.emit(t, n.data)
                                    }))
                                }))
                            }
                        }, {
                            key: "unbindEvent",
                            value: function () {
                                this.loader.off("end"), this.loader.off("error"), this.loader.off("performance")
                            }
                        }, {
                            key: "onLoaderChunkArrival",
                            value: function (e, t, n) {
                                if ("undefined" === typeof this.startReceiveTime && (this.startReceiveTime = Date.now()), (!this.seekLock || void 0 !== n) && (void 0 !== n && (this.seekPonit = n, this.seekLock = !1), this.arrivalDataCallback))
                                    if (this.emit("player-event", {
                                            type: h.PLAYER_EVENTS.LOADER_CHUNK_ARRIVAL,
                                            byteLength: e.byteLength,
                                            ts: Date.now()
                                        }), this.totalReceive += e.byteLength, 0 === this.cacheRemain && 0 === this.stashByteStart && (this.stashByteStart = t), this.cacheRemain + e.byteLength <= this.stashSize) {
                                        var r = new Uint8Array(this.cacheBuffer, 0, this.stashSize);
                                        r.set(new Uint8Array(e), this.cacheRemain), this.cacheRemain += e.byteLength
                                    } else {
                                        this.startReceiveTime && (this.emit("performance", {
                                            type: "first-flv-package-duration",
                                            value: Date.now() - this.startReceiveTime
                                        }), this.startReceiveTime = void 0);
                                        var i = new Uint8Array(this.cacheBuffer, 0, this.bufferSize);
                                        if (this.cacheRemain > 0) {
                                            var o = this.cacheBuffer.slice(0, this.cacheRemain),
                                                a = 0,
                                                s = Date.now();
                                            if (void 0 !== this.seekPonit ? (a = this.arrivalDataCallback(o, this.stashByteStart, this.seekPonit), this.seekPonit = void 0) : a = this.arrivalDataCallback(o, this.stashByteStart), this.emit("performance", {
                                                    type: "first-flv-to-mp4",
                                                    value: Date.now() - s
                                                }), a < o.byteLength) {
                                                if (a > 0) {
                                                    var u = new Uint8Array(o, a);
                                                    i.set(u, 0), this.cacheRemain = u.byteLength, this.stashByteStart += a
                                                }
                                            } else this.cacheRemain = 0, this.stashByteStart += a;
                                            this.cacheRemain + e.byteLength > this.bufferSize && (this.expandBuffer(this.cacheRemain + e.byteLength), i = new Uint8Array(this.cacheBuffer, 0, this.bufferSize)), i.set(new Uint8Array(e), this.cacheRemain), this.cacheRemain += e.byteLength
                                        } else {
                                            var f = 0,
                                                c = Date.now();
                                            if (void 0 !== this.seekPonit ? (f = this.arrivalDataCallback(e, t, this.seekPonit), this.seekPonit = void 0) : f = this.arrivalDataCallback(e, t), this.emit("performance", {
                                                    type: "first-flv-to-mp4",
                                                    value: Date.now() - c
                                                }), f < e.byteLength) {
                                                var l = e.byteLength - f;
                                                l > this.bufferSize && (this.expandBuffer(l), i = new Uint8Array(this.cacheBuffer, 0, this.bufferSize)), i.set(new Uint8Array(e, f), 0), this.cacheRemain += l, this.stashByteStart = t + f
                                            }
                                        }
                                    }
                            }
                        }, {
                            key: "initCacheBuffer",
                            value: function () {
                                this.cacheRemain = 0, this.totalReceive = 0, this.cacheBuffer = new ArrayBuffer(this.bufferSize)
                            }
                        }, {
                            key: "expandBuffer",
                            value: function (e) {
                                var t = this.bufferSize;
                                t < e && (t = e), this.cacheBuffer = new ArrayBuffer(t), this.bufferSize = t
                            }
                        }, {
                            key: "pause",
                            value: function () {
                                this.loader.pause()
                            }
                        }, {
                            key: "open",
                            value: function (e, t) {
                                this.emit("player-event", {
                                    type: h.PLAYER_EVENTS.LOADER_OPEN,
                                    ts: Date.now()
                                }), this.loader.open({
                                    from: e || 0,
                                    to: -1
                                }, t), this.heartbeat()
                            }
                        }, {
                            key: "heartbeat",
                            value: function () {
                                var e = this;
                                clearInterval(this.heartBeatInterval), this.heartBeatInterval = setInterval((function () {
                                    e.emit("heartbeat", {
                                        speed: e.totalReceive - e.preTotalReceive,
                                        totalReceive: e.totalReceive
                                    }), e.preTotalReceive = e.totalReceive
                                }), 1e3)
                            }
                        }, {
                            key: "resume",
                            value: function () {
                                this.paused = !1;
                                var e = this.totalReceive;
                                this.open(e)
                            }
                        }, {
                            key: "seek",
                            value: function (e, t, n) {
                                this.seekLock = !0, this.totalReceive = e, this.preTotalReceive = e, this.initCacheBuffer(), this.cacheRemain = 0, this.stashByteStart = 0, this.open(e, n)
                            }
                        }, {
                            key: "destroy",
                            value: function () {
                                this.pause(), this.initCacheBuffer(), window.clearInterval(this.heartBeatInterval), this.heartBeatInterval = null, this.unbindEvent()
                            }
                        }]), t
                    }(d.CustEvent);
                    t.default = g
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    }), t.default = function (e) {
                        var t = {},
                            n = void 0;
                        return n = -1 !== e.to ? "bytes=" + e.from.toString() + "-" + e.to.toString() : "bytes=" + e.from.toString() + "-", t["Range"] = n, {
                            headers: t
                        }
                    }
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(22),
                        o = p(i),
                        a = n(8),
                        s = p(a),
                        u = n(10),
                        f = p(u),
                        c = n(28),
                        l = p(c),
                        d = n(0),
                        h = n(3);
                    p(h);

                    function p(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function v(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function m(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }

                    function y(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var g = function () {
                            function e(t) {
                                y(this, e), f.default.init(), this._config = t, this.onInitSegment = null, this.onMediaSegment = null, this.onMediaInfo = null, this.seekCallBack = null, this._onCdnDropFrame = null, this.loadmetadata = !1, this.ftyp_moov = null, this._tagdemux = new s.default, this._flvparse = new o.default, this.ftyp_moov_v = null, this.ftyp_moov_a = null, this.metaSuccRun = !1, this.metas = [], this.parseChunk = null, this.hasVideo = !1, this.hasAudio = !1, this._error = null, this._pendingResolveSeekPoint = -1, this._tempBaseTime = 0, this.setflvBase = this.setflvBasefrist, this._tagdemux._onTrackMetadata = this.Metadata.bind(this), this._tagdemux._onMediaInfo = this.metaSucc.bind(this), this._tagdemux._onDataAvailable = this.onDataAvailable.bind(this), this._tagdemux._onError = this.error.bind(this), this._tagdemux._onCdnDropFrame = this.onCdnDropFrame.bind(this), this.m4mof = new l.default(this._config), this.m4mof.onMediaSegment = this.onMdiaSegment.bind(this)
                            }
                            return r(e, [{
                                key: "seek",
                                value: function (e) {
                                    this._flvparse.dispose(), this.setflvBase = this.setflvBasefrist, void 0 != e && 0 != e || (e = 0, this._pendingResolveSeekPoint = -1), this._tempBaseTime != e && (this._tempBaseTime = e, this._tagdemux._timestampBase = e, this.m4mof.seek(e), this.m4mof.insertDiscontinuity(), this._pendingResolveSeekPoint = e)
                                }
                            }, {
                                key: "setflvBasefrist",
                                value: function (e, t) {
                                    var n = 0;
                                    try {
                                        n = this._flvparse.setFlv(new Uint8Array(e))
                                    } catch (r) {
                                        this.error(r)
                                    }
                                    if (0 == this._flvparse.arrTag.length) return n;
                                    if (this._flvparse.arrTag.length > 0) {
                                        this._tagdemux.hasAudio = this.hasAudio = this._flvparse._hasAudio, this._tagdemux.hasVideo = this.hasVideo = this._flvparse._hasVideo, 0 != this._tempBaseTime && this._tempBaseTime == this._flvparse.arrTag[0].getTime() && (this._tagdemux._timestampBase = 0);
                                        try {
                                            this._tagdemux.moofTag(this._flvparse.arrTag)
                                        } catch (r) {
                                            this.error(r)
                                        }
                                        this.setflvBase = this.setflvBaseUsually
                                    }
                                    return n
                                }
                            }, {
                                key: "setflvBaseUsually",
                                value: function (e, t) {
                                    var n = 0;
                                    try {
                                        n = this._flvparse.setFlv(new Uint8Array(e))
                                    } catch (r) {
                                        this.error(r)
                                    }
                                    if (this._flvparse.arrTag.length > 0) try {
                                        this._tagdemux.moofTag(this._flvparse.arrTag)
                                    } catch (r) {
                                        this.error(r)
                                    }
                                    return n
                                }
                            }, {
                                key: "onMdiaSegment",
                                value: function (e, t) {
                                    if (this.onMediaSegment && this.onMediaSegment(e, new Uint8Array(t.data)), -1 != this._pendingResolveSeekPoint && "video" == e) {
                                        var n = this._pendingResolveSeekPoint;
                                        this._pendingResolveSeekPoint = -1, this.seekCallBack && this.seekCallBack(n)
                                    }
                                }
                            }, {
                                key: "Metadata",
                                value: function (e, t) {
                                    switch (e) {
                                        case "video":
                                            if (this.metas.push(["video", t]), this.m4mof._videoMeta = t, this.hasVideo && !this.hasAudio) return void this.metaSucc();
                                            break;
                                        case "audio":
                                            if (this.metas.push(["audio", t]), this.m4mof._audioMeta = t, !this.hasVideo && this.hasAudio) return void this.metaSucc();
                                            break
                                    }
                                    this.hasVideo && this.hasAudio && this.m4mof._videoMeta && this.m4mof._audioMeta && this.metaSucc()
                                }
                            }, {
                                key: "metaSucc",
                                value: function (e) {
                                    var t = this;
                                    this.onMediaInfo && e && this.onMediaInfo(e || this._tagdemux._mediaInfo, {
                                        hasAudio: this.hasAudio,
                                        hasVideo: this.hasVideo
                                    }), 0 != this.metas.length ? e || (this.metas.length > 1 ? this.metas.map((function (e) {
                                        "video" == e[0] ? t.ftyp_moov_v = f.default.generateInitSegment([e[1]]) : t.ftyp_moov_a = f.default.generateInitSegment([e[1]])
                                    })) : this.ftyp_moov = f.default.generateInitSegment([this.metas[0][1]]), this.onInitSegment && 0 == this.loadmetadata && (this.ftyp_moov ? this.onInitSegment(this.ftyp_moov) : this.onInitSegment(this.ftyp_moov_v, this.ftyp_moov_a), this.loadmetadata = !0)) : this.metaSuccRun = !0
                                }
                            }, {
                                key: "onDataAvailable",
                                value: function (e, t) {
                                    try {
                                        this.m4mof.remux(e, t)
                                    } catch (n) {
                                        this.error(n)
                                    }
                                }
                            }, {
                                key: "onCdnDropFrame",
                                value: function (e) {
                                    this._onCdnDropFrame && this._onCdnDropFrame(e)
                                }
                            }, {
                                key: "setflv",
                                value: function (e, t) {
                                    return this.setflvBase(e, t)
                                }
                            }, {
                                key: "setflvloc",
                                value: function (e) {
                                    o.default.setFlv(new Uint8Array(e));
                                    if (o.default.arrTag.length > 0) return o.default.arrTag
                                }
                            }, {
                                key: "error",
                                value: function (e) {
                                    this._error && this._error(e)
                                }
                            }]), e
                        }(),
                        b = function (e) {
                            function t(e) {
                                y(this, t);
                                var n = v(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                                return n.f2m = new g(e), n.f2m._error = n.error.bind(n), n._onInitSegment = null, n._onMediaSegment = null, n._onMediaInfo = null, n._seekCallBack = null, n
                            }
                            return m(t, e), r(t, [{
                                key: "error",
                                value: function (e) {
                                    this.emit("error", e.type)
                                }
                            }, {
                                key: "seek",
                                value: function (e) {
                                    this.f2m.seek(e)
                                }
                            }, {
                                key: "setflv",
                                value: function (e) {
                                    return this.f2m.setflv(e, 0)
                                }
                            }, {
                                key: "setflvloc",
                                value: function (e) {
                                    return this.f2m.setflvloc(e)
                                }
                            }, {
                                key: "onInitSegment",
                                set: function (e) {
                                    this._onInitSegment = e, this.f2m.onInitSegment = e
                                }
                            }, {
                                key: "onMediaSegment",
                                set: function (e) {
                                    this._onMediaSegment = e, this.f2m.onMediaSegment = e
                                }
                            }, {
                                key: "onMediaInfo",
                                set: function (e) {
                                    this._onMediaInfo = e, this.f2m.onMediaInfo = e
                                }
                            }, {
                                key: "seekCallBack",
                                set: function (e) {
                                    this._seekCallBack = e, this.f2m.seekCallBack = e
                                }
                            }, {
                                key: "onCdnDropFrame",
                                set: function (e) {
                                    console.log("set fun"), this.f2m._onCdnDropFrame = e
                                }
                            }]), t
                        }(d.CustEvent);
                    t.default = b
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = "function" === typeof Symbol && "symbol" === typeof Symbol.iterator ? function (e) {
                            return typeof e
                        } : function (e) {
                            return e && "function" === typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
                        },
                        i = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        o = n(24),
                        a = h(o),
                        s = n(27),
                        u = h(s),
                        f = n(9),
                        c = h(f),
                        l = n(3),
                        d = h(l);

                    function h(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function p(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var v = function () {
                        function e() {
                            p(this, e), this.TAG = this.constructor.name, this._config = {}, this._onError = null, this._onMediaInfo = null, this._onTrackMetadata = null, this._onDataAvailable = null, this._onCdnDropFrame = null, this._dataOffset = 0, this._firstParse = !0, this._dispatch = !1, this._hasAudio = !1, this._hasVideo = !1, this._audioInitialMetadataDispatched = !1, this._videoInitialMetadataDispatched = !1, this._mediaInfo = new u.default, this._mediaInfo.hasAudio = this._hasAudio, this._mediaInfo.hasVideo = this._hasVideo, this._metadata = null, this._audioMetadata = null, this._videoMetadata = null, this._naluLengthSize = 4, this._timestampBase = 0, this._timescale = 1e3, this._duration = 0, this._durationOverrided = !1, this._referenceFrameRate = {
                                fixed: !0,
                                fps: 23.976,
                                fps_num: 23976,
                                fps_den: 1e3
                            }, this._videoTrack = {
                                type: "video",
                                id: 1,
                                sequenceNumber: 0,
                                addcoefficient: 2,
                                samples: [],
                                length: 0
                            }, this._audioTrack = {
                                type: "audio",
                                id: 2,
                                sequenceNumber: 0,
                                addcoefficient: 2,
                                samples: [],
                                length: 0
                            }, this._littleEndian = function () {
                                var e = new ArrayBuffer(2);
                                return new DataView(e).setInt16(0, 256, !0), 256 === new Int16Array(e)[0]
                            }(), this._timeInfo = {
                                aacFirstDts: 0,
                                aacCurrentDtsOffset: 0,
                                aacCurrentFixedLen: 0,
                                aacFixedRecord: [],
                                avcSampleDuration: 40,
                                avcLastDts: 0,
                                avcLastPts: 0
                            }
                        }
                        return i(e, [{
                            key: "onMediaInfo",
                            value: function (e) {
                                this._onMediaInfo = e
                            }
                        }, {
                            key: "parseFirstTimeStamp",
                            value: function (e) {
                                this._mediaInfo.beginTimeStamp || (this._mediaInfo.beginTimeStamp = e.getTime(), this._mediaInfo.audioCodec && this._mediaInfo.videoCodec && this._onMediaInfo(this._mediaInfo))
                            }
                        }, {
                            key: "parseMetadata",
                            value: function (e) {
                                var t = a.default.parseMetadata(e);
                                this._mediaInfo.metadata && (this._mediaInfo.metadata = t.onMetaData, this._onMediaInfo(this._mediaInfo)), this._parseScriptData(t)
                            }
                        }, {
                            key: "_parseScriptData",
                            value: function (e) {
                                var t = e;
                                if (t.hasOwnProperty("onMetaData")) {
                                    this._metadata, this._metadata = t;
                                    var n = this._metadata.onMetaData;
                                    if ("boolean" === typeof n.hasAudio && (this._hasAudio = n.hasAudio, this._mediaInfo.hasAudio = this._hasAudio), "boolean" === typeof n.hasVideo && (this._hasVideo = n.hasVideo, this._mediaInfo.hasVideo = this._hasVideo), "number" === typeof n.audiodatarate && (this._mediaInfo.audioDataRate = n.audiodatarate), "number" === typeof n.videodatarate && (this._mediaInfo.videoDataRate = n.videodatarate), "number" === typeof n.width && (this._mediaInfo.width = n.width), "number" === typeof n.height && (this._mediaInfo.height = n.height), "number" === typeof n.duration) {
                                        if (!this._durationOverrided) {
                                            var i = Math.floor(n.duration * this._timescale);
                                            this._duration = i, this._mediaInfo.duration = i
                                        }
                                    } else this._mediaInfo.duration = 0;
                                    if ("number" === typeof n.framerate) {
                                        var o = Math.floor(1e3 * n.framerate);
                                        if (o > 0) {
                                            var a = o / 1e3;
                                            this._referenceFrameRate.fixed = !0, this._referenceFrameRate.fps = a, this._referenceFrameRate.fps_num = o, this._referenceFrameRate.fps_den = 1e3, this._mediaInfo.fps = a, this._timeInfo.avcSampleDuration = Math.ceil(1e3 / this._mediaInfo.fps) || 40
                                        }
                                    }
                                    if ("object" === r(n.keyframes)) {
                                        this._mediaInfo.hasKeyframesIndex = !0;
                                        var s = n.keyframes;
                                        s.times = n.times, s.filepositions = n.filepositions, this._mediaInfo.keyframesIndex = this._parseKeyframesIndex(s), n.keyframes = null
                                    } else this._mediaInfo.hasKeyframesIndex = !1;
                                    return this._dispatch = !1, this._mediaInfo.metadata = n, console.log(this.TAG, "Parsed onMetaData"), this._mediaInfo
                                }
                            }
                        }, {
                            key: "_parseKeyframesIndex",
                            value: function (e) {
                                for (var t = [], n = [], r = 1; r < e.times.length; r++) {
                                    var i = this._timestampBase + Math.floor(1e3 * e.times[r]);
                                    t.push(i), n.push(e.filepositions[r])
                                }
                                return {
                                    times: t,
                                    filepositions: n
                                }
                            }
                        }, {
                            key: "moofTag",
                            value: function (e) {
                                for (var t = 0; t < e.length; t++) this._dispatch = !0, this.parseChunks(e[t]);
                                this._isInitialMetadataDispatched() && this._dispatch && (this._audioTrack.length || this._videoTrack.length) && this._onDataAvailable(this._audioTrack, this._videoTrack)
                            }
                        }, {
                            key: "parseChunks",
                            value: function (e) {
                                switch (e.tagType) {
                                    case 8:
                                        this._parseAudioData(e.body.buffer, 0, e.body.length, e.getTime()), this.parseFirstTimeStamp(e);
                                        break;
                                    case 9:
                                        this._parseVideoData(e.body.buffer, 0, e.body.length, e.getTime(), 0), this.parseFirstTimeStamp(e);
                                        break;
                                    case 18:
                                        this.parseMetadata(e.body);
                                        break
                                }
                            }
                        }, {
                            key: "_parseVideoData",
                            value: function (e, t, n, r, i) {
                                if (r == this._timestampBase && 0 != this._timestampBase) throw new d.default(r, this._timestampBase, "夭寿啦这个视频不是从0开始");
                                if (n <= 1) console.log(this.TAG, "Flv: Invalid video packet, missing VideoData payload!");
                                else {
                                    var o = new Uint8Array(e, t, n)[0],
                                        a = (240 & o) >>> 4,
                                        s = 15 & o;
                                    7 === s ? this._parseAVCVideoPacket(e, t + 1, n - 1, r, i, a) : this._onError && this._onError("Flv: Unsupported codec in video frame: " + s)
                                }
                            }
                        }, {
                            key: "_parseAVCVideoPacket",
                            value: function (e, t, n, r, i, o) {
                                if (n < 4) console.log(this.TAG, "Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");
                                else {
                                    var a = this._littleEndian,
                                        s = new DataView(e, t, n),
                                        u = s.getUint8(0),
                                        f = 16777215 & s.getUint32(0, !a);
                                    if (0 === u) this._parseAVCDecoderConfigurationRecord(e, t + 4, n - 4);
                                    else if (1 === u) this._parseAVCVideoData(e, t + 4, n - 4, r, i, o, f);
                                    else if (2 !== u) return void this._onError("Flv: Invalid video packet type " + u)
                                }
                            }
                        }, {
                            key: "_parseAVCDecoderConfigurationRecord",
                            value: function (e, t, n) {
                                if (n < 7) console.log(this.TAG, "Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");
                                else {
                                    var r = this._videoMetadata,
                                        i = this._videoTrack,
                                        o = this._littleEndian,
                                        a = new DataView(e, t, n);
                                    r ? "undefined" !== typeof r.avcc && console.log(this.TAG, "Found another AVCDecoderConfigurationRecord!") : (r = this._videoMetadata = {}, r.type = "video", r.id = i.id, r.timescale = this._timescale, r.duration = this._duration);
                                    var s = a.getUint8(0),
                                        u = a.getUint8(1);
                                    a.getUint8(2), a.getUint8(3);
                                    if (1 === s && 0 !== u)
                                        if (this._naluLengthSize = 1 + (3 & a.getUint8(4)), 3 === this._naluLengthSize || 4 === this._naluLengthSize) {
                                            var f = 31 & a.getUint8(5);
                                            if (0 === f || f > 1) this._onError(DemuxErrors.FORMAT_ERROR, "Flv: Invalid H264 SPS count: " + f);
                                            else {
                                                for (var l = 6, d = 0; d < f; d++) {
                                                    var h = a.getUint16(l, !o);
                                                    if (l += 2, 0 !== h) {
                                                        var p = new Uint8Array(e, t + l, h);
                                                        l += h;
                                                        var v = c.default.parseSPS(p);
                                                        r.codecWidth = v.codec_size.width, r.codecHeight = v.codec_size.height, r.presentWidth = v.present_size.width, r.presentHeight = v.present_size.height, r.config = v, r.profile = v.profile_string, r.level = v.level_string, r.bitDepth = v.bit_depth, r.chromaFormat = v.chroma_format, r.sarRatio = v.sar_ratio, r.frameRate = v.frame_rate, !1 !== v.frame_rate.fixed && 0 !== v.frame_rate.fps_num && 0 !== v.frame_rate.fps_den || (r.frameRate = this._referenceFrameRate);
                                                        var m = r.frameRate.fps_den,
                                                            y = r.frameRate.fps_num;
                                                        r.refSampleDuration = Math.floor(r.timescale * (m / y));
                                                        for (var g = p.subarray(1, 4), b = "avc1.", _ = 0; _ < 3; _++) {
                                                            var w = g[_].toString(16);
                                                            w.length < 2 && (w = "0" + w), b += w
                                                        }
                                                        r.codec = b;
                                                        var S = this._mediaInfo;
                                                        S.width = r.codecWidth, S.height = r.codecHeight, S.fps = r.frameRate.fps, S.profile = r.profile, S.level = r.level, S.chromaFormat = v.chroma_format_string, S.sarNum = r.sarRatio.width, S.sarDen = r.sarRatio.height, S.videoCodec = b, S.meta = r, S.hasAudio ? null != S.audioCodec && (S.mimeType = 'video/x-flv; codecs="' + S.videoCodec + "," + S.audioCodec + '"') : S.mimeType = 'video/x-flv; codecs="' + S.videoCodec + '"', S.isComplete() && this._onMediaInfo(S)
                                                    }
                                                }
                                                var k = a.getUint8(l);
                                                if (0 === k || k > 1) this._onError(DemuxErrors.FORMAT_ERROR, "Flv: Invalid H264 PPS count: " + k);
                                                else {
                                                    l++;
                                                    for (var E = 0; E < k; E++) {
                                                        var O = a.getUint16(l, !o);
                                                        l += 2, 0 !== O && (l += O)
                                                    }
                                                    r.avcc = new Uint8Array(n), r.avcc.set(new Uint8Array(e, t, n), 0), console.log(this.TAG, "Parsed AVCDecoderConfigurationRecord"), this._isInitialMetadataDispatched() ? this._dispatch && (this._audioTrack.length || this._videoTrack.length) && this._onDataAvailable(this._audioTrack, this._videoTrack) : this._videoInitialMetadataDispatched = !0, this._dispatch = !1, this._onTrackMetadata("video", r)
                                                }
                                            }
                                        } else this._onError(DemuxErrors.FORMAT_ERROR, "Flv: Strange NaluLengthSizeMinusOne: " + (this._naluLengthSize - 1));
                                    else this._onError(DemuxErrors.FORMAT_ERROR, "Flv: Invalid AVCDecoderConfigurationRecord")
                                }
                            }
                        }, {
                            key: "timestampBase",
                            value: function (e) {
                                this._timestampBase = e
                            }
                        }, {
                            key: "_parseAVCVideoData",
                            value: function (e, t, n, r, i, o, a) {
                                for (var s = this._littleEndian, u = new DataView(e, t, n), f = [], c = 0, l = 0, d = this._naluLengthSize, h = this._timestampBase + r, p = 1 === o, v = h, m = 0; m < this._timeInfo.aacFixedRecord.length; m++)
                                    if (h > this._timeInfo.aacFixedRecord[m].ed) {
                                        this._timeInfo.aacFixedRecord.splice(0, m);
                                        break
                                    } if (this._timeInfo.avcLastDts && v - this._timeInfo.avcLastDts > this._timeInfo.avcSampleDuration) {
                                    for (var y = !1, g = 0; g < this._timeInfo.aacFixedRecord.length; g++)
                                        if (v >= this._timeInfo.aacFixedRecord[g].st && v <= this._timeInfo.aacFixedRecord[g].ed) {
                                            v -= this._timeInfo.aacFixedRecord[g].fix, y = !0, this._timeInfo.aacFixedRecord[g].ed == Number.POSITIVE_INFINITY && v - this._timeInfo.avcLastDts > this._timeInfo.avcSampleDuration && (y = !1);
                                            break
                                        } y || (v = this._timeInfo.avcLastDts + this._timeInfo.avcSampleDuration), v <= this._timeInfo.avcLastDts && (v = this._timeInfo.avcLastDts + 1)
                                }
                                var b = v + a;
                                while (l < n) {
                                    if (l + 4 >= n) {
                                        console.log(this.TAG, "Malformed Nalu near timestamp " + h + ", offset = " + l + ", dataSize = " + n);
                                        break
                                    }
                                    var _ = u.getUint32(l, !s);
                                    if (3 === d && (_ >>>= 8), _ > n - d) return void console.log(this.TAG, "Malformed Nalus near timestamp " + h + ", NaluSize > DataSize!");
                                    var w = 31 & u.getUint8(l + d);
                                    5 === w && (p = !0);
                                    var S = new Uint8Array(e, t + l, d + _),
                                        k = {
                                            type: w,
                                            data: S
                                        };
                                    f.push(k), c += S.byteLength, l += d + _
                                }
                                if (f.length) {
                                    var E = this._videoTrack,
                                        O = {
                                            units: f,
                                            length: c,
                                            isKeyframe: p,
                                            dts: v,
                                            cts: a,
                                            pts: b
                                        };
                                    p && (O.fileposition = i), E.samples.push(O), E.length += c
                                }
                                this._timeInfo.avcLastDts = v
                            }
                        }, {
                            key: "_parseAudioData",
                            value: function (e, t, n, r) {
                                if (r == this._timestampBase && 0 != this._timestampBase && console.log(r, this._timestampBase, "夭寿啦这个视频不是从0开始"), n <= 1) console.log(this.TAG, "Flv: Invalid audio packet, missing SoundData payload!");
                                else {
                                    var i = this._audioMetadata,
                                        o = this._audioTrack;
                                    if (!i || !i.codec) {
                                        i = this._audioMetadata = {}, i.type = "audio", i.id = o.id, i.timescale = this._timescale, i.duration = this._duration;
                                        this._littleEndian;
                                        var a = new DataView(e, t, n),
                                            s = a.getUint8(0),
                                            u = s >>> 4;
                                        if (10 !== u) return void this._onError(DemuxErrors.CODEC_UNSUPPORTED, "Flv: Unsupported audio codec idx: " + u);
                                        var f = 0,
                                            c = (12 & s) >>> 2,
                                            l = [5500, 11025, 22050, 44100, 48e3];
                                        if (!(c < l.length)) return void this._onError(DemuxErrors.FORMAT_ERROR, "Flv: Invalid audio sample rate idx: " + c);
                                        f = l[c];
                                        var d = 1 & s;
                                        i.audioSampleRate = f, i.channelCount = 0 === d ? 1 : 2, i.refSampleDuration = Math.floor(1024 / i.audioSampleRate * i.timescale), i.codec = "mp4a.40.5"
                                    }
                                    var h = this._parseAACAudioData(e, t + 1, n - 1);
                                    if (void 0 != h) {
                                        if (0 === h.packetType) {
                                            i.config && console.log(this.TAG, "Found another AudioSpecificConfig!");
                                            var p = h.data;
                                            i.audioSampleRate = p.samplingRate, i.channelCount = p.channelCount, i.codec = p.codec, i.config = p.config, i.refSampleDuration = Math.floor(1024 / i.audioSampleRate * i.timescale), console.log(this.TAG, "Parsed AudioSpecificConfig"), this._isInitialMetadataDispatched() ? this._dispatch && (this._audioTrack.length || this._videoTrack.length) && this._onDataAvailable(this._audioTrack, this._videoTrack) : this._audioInitialMetadataDispatched = !0, this._dispatch = !1;
                                            var v = this._mediaInfo;
                                            return v.audioCodec = "mp4a.40." + p.originalAudioObjectType, v.audioSampleRate = i.audioSampleRate, v.audioChannelCount = i.channelCount, v.hasVideo ? null != v.videoCodec && (v.mimeType = 'video/x-flv; codecs="' + v.videoCodec + "," + v.audioCodec + '"') : v.mimeType = 'video/x-flv; codecs="' + v.audioCodec + '"', this._onTrackMetadata("audio", i), void(v.isComplete() && this._onMediaInfo(v))
                                        }
                                        if (1 === h.packetType) {
                                            var m = this._timestampBase + r;
                                            this._timeInfo.aacFirstDts || (this._timeInfo.aacFirstDts = m);
                                            var y = m - Math.floor(this._timeInfo.aacFirstDts + this._timeInfo.aacCurrentDtsOffset) - this._timeInfo.aacCurrentFixedLen;
                                            y > 1 && (this._timeInfo.aacCurrentFixedLen += y, this._timeInfo.aacFixedRecord.length && (this._timeInfo.aacFixedRecord[this._timeInfo.aacFixedRecord.length - 1].ed = m), this._timeInfo.aacFixedRecord.push({
                                                st: m,
                                                fix: this._timeInfo.aacCurrentFixedLen,
                                                ed: Number.POSITIVE_INFINITY
                                            }), this._onCdnDropFrame && this._onCdnDropFrame(y));
                                            var g = 1024e3 / i.audioSampleRate,
                                                b = Math.floor(this._timeInfo.aacFirstDts + this._timeInfo.aacCurrentDtsOffset),
                                                _ = {
                                                    unit: h.data,
                                                    dts: b,
                                                    pts: b,
                                                    length: g
                                                };
                                            this._timeInfo.aacCurrentDtsOffset += g, o.samples.push(_), o.length += h.data.length
                                        } else console.log(this.TAG, "Flv: Unsupported AAC data type " + h.packetType)
                                    }
                                }
                            }
                        }, {
                            key: "_parseAACAudioData",
                            value: function (e, t, n) {
                                if (!(n <= 1)) {
                                    var r = {},
                                        i = new Uint8Array(e, t, n);
                                    return r.packetType = i[0], 0 === i[0] ? r.data = this._parseAACAudioSpecificConfig(e, t + 1, n - 1) : r.data = i.subarray(1), r
                                }
                                console.log(this.TAG, "Flv: Invalid AAC packet, missing AACPacketType or/and Data!")
                            }
                        }, {
                            key: "_parseAACAudioSpecificConfig",
                            value: function (e, t, n) {
                                var r = new Uint8Array(e, t, n),
                                    i = null,
                                    o = [96e3, 88200, 64e3, 48e3, 44100, 32e3, 24e3, 22050, 16e3, 12e3, 11025, 8e3, 7350],
                                    a = 0,
                                    s = 0,
                                    u = 0,
                                    f = null;
                                if (a = s = r[0] >>> 3, u = (7 & r[0]) << 1 | r[1] >>> 7, u < 0 || u >= o.length) this._onError(DemuxErrors.FORMAT_ERROR, "Flv: AAC invalid sampling frequency index!");
                                else {
                                    var c = o[u],
                                        l = (120 & r[1]) >>> 3;
                                    if (!(l < 0 || l >= 8)) {
                                        5 === a && (f = (7 & r[1]) << 1 | r[2] >>> 7, (124 & r[2]) >>> 2);
                                        var d = self.navigator.userAgent.toLowerCase();
                                        return -1 !== d.indexOf("firefox") ? u >= 6 ? (a = 5, i = new Array(4), f = u - 3) : (a = 2, i = new Array(2), f = u) : -1 !== d.indexOf("android") ? (a = 2, i = new Array(2), f = u) : (a = 5, f = u, i = new Array(4), u >= 6 ? f = u - 3 : 1 === l && (a = 2, i = new Array(2), f = u)), i[0] = a << 3, i[0] |= (15 & u) >>> 1, i[1] = (15 & u) << 7, i[1] |= (15 & l) << 3, 5 === a && (i[1] |= (15 & f) >>> 1, i[2] = (1 & f) << 7, i[2] |= 8, i[3] = 0), {
                                            config: i,
                                            samplingRate: c,
                                            channelCount: l,
                                            codec: "mp4a.40." + a,
                                            originalAudioObjectType: s
                                        }
                                    }
                                    this._onError(DemuxErrors.FORMAT_ERROR, "Flv: AAC invalid channel configuration")
                                }
                            }
                        }, {
                            key: "_isInitialMetadataDispatched",
                            value: function () {
                                return this._hasAudio && this._hasVideo ? this._audioInitialMetadataDispatched && this._videoInitialMetadataDispatched : this._hasAudio && !this._hasVideo ? this._audioInitialMetadataDispatched : !this._hasAudio && this._hasVideo ? this._videoInitialMetadataDispatched : void 0
                            }
                        }, {
                            key: "hasAudio",
                            set: function (e) {
                                this._mediaInfo.hasAudio = this._hasAudio = e
                            }
                        }, {
                            key: "hasVideo",
                            set: function (e) {
                                this._mediaInfo.hasVideo = this._hasVideo = e
                            }
                        }, {
                            key: "onCdnDropFrame",
                            set: function (e) {
                                this._onCdnDropFrame = e
                            }
                        }]), e
                    }();
                    t.default = v
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(26),
                        o = a(i);

                    function a(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function s(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var u = function () {
                        function e() {
                            s(this, e)
                        }
                        return r(e, null, [{
                            key: "_ebsp2rbsp",
                            value: function (e) {
                                for (var t = e, n = t.byteLength, r = new Uint8Array(n), i = 0, o = 0; o < n; o++) o >= 2 && 3 === t[o] && 0 === t[o - 1] && 0 === t[o - 2] || (r[i] = t[o], i++);
                                return new Uint8Array(r.buffer, 0, i)
                            }
                        }, {
                            key: "parseSPS",
                            value: function (t) {
                                var n = e._ebsp2rbsp(t),
                                    r = new o.default(n);
                                r.readByte();
                                var i = r.readByte();
                                r.readByte();
                                var a = r.readByte();
                                r.readUEG();
                                var s = e.getProfileString(i),
                                    u = e.getLevelString(a),
                                    f = 1,
                                    c = 420,
                                    l = [0, 420, 422, 444],
                                    d = 8;
                                if ((100 === i || 110 === i || 122 === i || 244 === i || 44 === i || 83 === i || 86 === i || 118 === i || 128 === i || 138 === i || 144 === i) && (f = r.readUEG(), 3 === f && r.readBits(1), f <= 3 && (c = l[f]), d = r.readUEG() + 8, r.readUEG(), r.readBits(1), r.readBool()))
                                    for (var h = 3 !== f ? 8 : 12, p = 0; p < h; p++) r.readBool() && (p < 6 ? e._skipScalingList(r, 16) : e._skipScalingList(r, 64));
                                r.readUEG();
                                var v = r.readUEG();
                                if (0 === v) r.readUEG();
                                else if (1 === v) {
                                    r.readBits(1), r.readSEG(), r.readSEG();
                                    for (var m = r.readUEG(), y = 0; y < m; y++) r.readSEG()
                                }
                                r.readUEG(), r.readBits(1);
                                var g = r.readUEG(),
                                    b = r.readUEG(),
                                    _ = r.readBits(1);
                                0 === _ && r.readBits(1), r.readBits(1);
                                var w = 0,
                                    S = 0,
                                    k = 0,
                                    E = 0,
                                    O = r.readBool();
                                O && (w = r.readUEG(), S = r.readUEG(), k = r.readUEG(), E = r.readUEG());
                                var T = 1,
                                    A = 1,
                                    x = 0,
                                    R = !0,
                                    M = 0,
                                    D = 0,
                                    L = r.readBool();
                                if (L) {
                                    if (r.readBool()) {
                                        var B = r.readByte(),
                                            P = [1, 12, 10, 16, 40, 24, 20, 32, 80, 18, 15, 64, 160, 4, 3, 2],
                                            C = [1, 11, 11, 11, 33, 11, 11, 11, 33, 11, 11, 33, 99, 3, 2, 1];
                                        B > 0 && B < 16 ? (T = P[B - 1], A = C[B - 1]) : 255 === B && (T = r.readByte() << 8 | r.readByte(), A = r.readByte() << 8 | r.readByte())
                                    }
                                    if (r.readBool() && r.readBool(), r.readBool() && (r.readBits(4), r.readBool() && r.readBits(24)), r.readBool() && (r.readUEG(), r.readUEG()), r.readBool()) {
                                        var I = r.readBits(32),
                                            j = r.readBits(32);
                                        R = r.readBool(), M = j, D = 2 * I, x = M / D
                                    }
                                }
                                var N = 1;
                                1 === T && 1 === A || (N = T / A);
                                var F = 0,
                                    U = 0;
                                if (0 === f) F = 1, U = 2 - _;
                                else {
                                    var V = 3 === f ? 1 : 2,
                                        z = 1 === f ? 2 : 1;
                                    F = V, U = z * (2 - _)
                                }
                                var G = 16 * (g + 1),
                                    W = 16 * (b + 1) * (2 - _);
                                G -= (w + S) * F, W -= (k + E) * U;
                                var q = Math.ceil(G * N);
                                return r.destroy(), r = null, {
                                    profile_string: s,
                                    level_string: u,
                                    bit_depth: d,
                                    chroma_format: c,
                                    chroma_format_string: e.getChromaFormatString(c),
                                    frame_rate: {
                                        fixed: R,
                                        fps: x,
                                        fps_den: D,
                                        fps_num: M
                                    },
                                    sar_ratio: {
                                        width: T,
                                        height: A
                                    },
                                    codec_size: {
                                        width: G,
                                        height: W
                                    },
                                    present_size: {
                                        width: q,
                                        height: W
                                    }
                                }
                            }
                        }, {
                            key: "_skipScalingList",
                            value: function (e, t) {
                                for (var n = 8, r = 8, i = 0, o = 0; o < t; o++) 0 !== r && (i = e.readSEG(), r = (n + i + 256) % 256), n = 0 === r ? n : r
                            }
                        }, {
                            key: "getProfileString",
                            value: function (e) {
                                switch (e) {
                                    case 66:
                                        return "Baseline";
                                    case 77:
                                        return "Main";
                                    case 88:
                                        return "Extended";
                                    case 100:
                                        return "High";
                                    case 110:
                                        return "High10";
                                    case 122:
                                        return "High422";
                                    case 244:
                                        return "High444";
                                    default:
                                        return "Unknown"
                                }
                            }
                        }, {
                            key: "getLevelString",
                            value: function (e) {
                                return (e / 10).toFixed(1)
                            }
                        }, {
                            key: "getChromaFormatString",
                            value: function (e) {
                                switch (e) {
                                    case 420:
                                        return "4:2:0";
                                    case 422:
                                        return "4:2:2";
                                    case 444:
                                        return "4:4:4";
                                    default:
                                        return "Unknown"
                                }
                            }
                        }]), e
                    }();
                    t.default = u
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                        function e(e, t) {
                            for (var n = 0; n < t.length; n++) {
                                var r = t[n];
                                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                            }
                        }
                        return function (t, n, r) {
                            return n && e(t.prototype, n), r && e(t, r), t
                        }
                    }();

                    function i(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var o = function () {
                        function e() {
                            i(this, e)
                        }
                        return r(e, null, [{
                            key: "init",
                            value: function () {
                                for (var t in e.types = {
                                        avc1: [],
                                        avcC: [],
                                        btrt: [],
                                        dinf: [],
                                        dref: [],
                                        esds: [],
                                        ftyp: [],
                                        hdlr: [],
                                        mdat: [],
                                        mdhd: [],
                                        mdia: [],
                                        mfhd: [],
                                        minf: [],
                                        moof: [],
                                        moov: [],
                                        mp4a: [],
                                        mvex: [],
                                        mvhd: [],
                                        sdtp: [],
                                        stbl: [],
                                        stco: [],
                                        stsc: [],
                                        stsd: [],
                                        stsz: [],
                                        stts: [],
                                        tfdt: [],
                                        tfhd: [],
                                        traf: [],
                                        trak: [],
                                        trun: [],
                                        trex: [],
                                        tkhd: [],
                                        vmhd: [],
                                        smhd: []
                                    }, e.types) e.types.hasOwnProperty(t) && (e.types[t] = [t.charCodeAt(0), t.charCodeAt(1), t.charCodeAt(2), t.charCodeAt(3)]);
                                var n = e.constants = {};
                                n.FTYP = new Uint8Array([105, 115, 111, 109, 0, 0, 0, 1, 105, 115, 111, 109, 97, 118, 99, 49]), n.STSD_PREFIX = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1]), n.STTS = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0]), n.STSC = n.STCO = n.STTS, n.STSZ = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), n.HDLR_VIDEO = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 118, 105, 100, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 105, 100, 101, 111, 72, 97, 110, 100, 108, 101, 114, 0]), n.HDLR_AUDIO = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 115, 111, 117, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 111, 117, 110, 100, 72, 97, 110, 100, 108, 101, 114, 0]), n.DREF = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 12, 117, 114, 108, 32, 0, 0, 0, 1]), n.SMHD = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0]), n.VMHD = new Uint8Array([0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0])
                            }
                        }, {
                            key: "box",
                            value: function (e) {
                                for (var t = 8, n = null, r = Array.prototype.slice.call(arguments, 1), i = r.length, o = 0; o < i; o++) t += r[o].byteLength;
                                n = new Uint8Array(t), n[0] = t >>> 24 & 255, n[1] = t >>> 16 & 255, n[2] = t >>> 8 & 255, n[3] = 255 & t, n.set(e, 4);
                                for (var a = 8, s = 0; s < i; s++) n.set(r[s], a), a += r[s].byteLength;
                                return n
                            }
                        }, {
                            key: "generateInitSegment",
                            value: function (t) {
                                t.constructor != Array && (t = [t]);
                                var n = e.box(e.types.ftyp, e.constants.FTYP),
                                    r = e.moov(t),
                                    i = new Uint8Array(n.byteLength + r.byteLength);
                                return i.set(n, 0), i.set(r, n.byteLength), i
                            }
                        }, {
                            key: "moov",
                            value: function (t) {
                                var n = e.mvhd(t[0].timescale, t[0].duration),
                                    r = e.trak(t[0]),
                                    i = void 0;
                                t.length > 1 && (i = e.trak(t[1]));
                                var o = e.mvex(t);
                                return t.length > 1 ? e.box(e.types.moov, n, r, i, o) : e.box(e.types.moov, n, r, o)
                            }
                        }, {
                            key: "mvhd",
                            value: function (t, n) {
                                return e.box(e.types.mvhd, new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, t >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255]))
                            }
                        }, {
                            key: "trak",
                            value: function (t) {
                                return e.box(e.types.trak, e.tkhd(t), e.mdia(t))
                            }
                        }, {
                            key: "tkhd",
                            value: function (t) {
                                var n = t.id,
                                    r = t.duration,
                                    i = t.presentWidth,
                                    o = t.presentHeight;
                                return e.box(e.types.tkhd, new Uint8Array([0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n, 0, 0, 0, 0, r >>> 24 & 255, r >>> 16 & 255, r >>> 8 & 255, 255 & r, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, i >>> 8 & 255, 255 & i, 0, 0, o >>> 8 & 255, 255 & o, 0, 0]))
                            }
                        }, {
                            key: "mdia",
                            value: function (t) {
                                return e.box(e.types.mdia, e.mdhd(t), e.hdlr(t), e.minf(t))
                            }
                        }, {
                            key: "mdhd",
                            value: function (t) {
                                var n = t.timescale,
                                    r = t.duration;
                                return e.box(e.types.mdhd, new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n, r >>> 24 & 255, r >>> 16 & 255, r >>> 8 & 255, 255 & r, 85, 196, 0, 0]))
                            }
                        }, {
                            key: "hdlr",
                            value: function (t) {
                                var n = null;
                                return n = "audio" === t.type ? e.constants.HDLR_AUDIO : e.constants.HDLR_VIDEO, e.box(e.types.hdlr, n)
                            }
                        }, {
                            key: "minf",
                            value: function (t) {
                                var n = null;
                                return n = "audio" === t.type ? e.box(e.types.smhd, e.constants.SMHD) : e.box(e.types.vmhd, e.constants.VMHD), e.box(e.types.minf, n, e.dinf(), e.stbl(t))
                            }
                        }, {
                            key: "dinf",
                            value: function () {
                                var t = e.box(e.types.dinf, e.box(e.types.dref, e.constants.DREF));
                                return t
                            }
                        }, {
                            key: "stbl",
                            value: function (t) {
                                var n = e.box(e.types.stbl, e.stsd(t), e.box(e.types.stts, e.constants.STTS), e.box(e.types.stsc, e.constants.STSC), e.box(e.types.stsz, e.constants.STSZ), e.box(e.types.stco, e.constants.STCO));
                                return n
                            }
                        }, {
                            key: "stsd",
                            value: function (t) {
                                return "audio" === t.type ? e.box(e.types.stsd, e.constants.STSD_PREFIX, e.mp4a(t)) : e.box(e.types.stsd, e.constants.STSD_PREFIX, e.avc1(t))
                            }
                        }, {
                            key: "mp4a",
                            value: function (t) {
                                var n = t.channelCount,
                                    r = t.audioSampleRate,
                                    i = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, n, 0, 16, 0, 0, 0, 0, r >>> 8 & 255, 255 & r, 0, 0]);
                                return e.box(e.types.mp4a, i, e.esds(t))
                            }
                        }, {
                            key: "esds",
                            value: function (t) {
                                var n = t.config,
                                    r = n.length,
                                    i = new Uint8Array([0, 0, 0, 0, 3, 23 + r, 0, 1, 0, 4, 15 + r, 64, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5].concat([r]).concat(n).concat([6, 1, 2]));
                                return e.box(e.types.esds, i)
                            }
                        }, {
                            key: "avc1",
                            value: function (t) {
                                var n = t.avcc,
                                    r = t.codecWidth,
                                    i = t.codecHeight,
                                    o = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, r >>> 8 & 255, 255 & r, i >>> 8 & 255, 255 & i, 0, 72, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 1, 4, 103, 49, 49, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 255, 255]);
                                return e.box(e.types.avc1, o, e.box(e.types.avcC, n))
                            }
                        }, {
                            key: "mvex",
                            value: function (t) {
                                return t.length > 1 ? e.box(e.types.mvex, e.trex(t[0]), e.trex(t[1])) : e.box(e.types.mvex, e.trex(t[0]))
                            }
                        }, {
                            key: "trex",
                            value: function (t) {
                                var n = t.id,
                                    r = new Uint8Array([0, 0, 0, 0, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]);
                                return e.box(e.types.trex, r)
                            }
                        }, {
                            key: "moof",
                            value: function (t, n) {
                                return e.box(e.types.moof, e.mfhd(t.sequenceNumber), e.traf(t, n))
                            }
                        }, {
                            key: "mfhd",
                            value: function (t) {
                                var n = new Uint8Array([0, 0, 0, 0, t >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t]);
                                return e.box(e.types.mfhd, n)
                            }
                        }, {
                            key: "traf",
                            value: function (t, n) {
                                var r = t.id,
                                    i = e.box(e.types.tfhd, new Uint8Array([0, 0, 0, 0, r >>> 24 & 255, r >>> 16 & 255, r >>> 8 & 255, 255 & r])),
                                    o = e.box(e.types.tfdt, new Uint8Array([0, 0, 0, 0, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n])),
                                    a = e.sdtp(t),
                                    s = e.trun(t, a.byteLength + 16 + 16 + 8 + 16 + 8 + 8);
                                return e.box(e.types.traf, i, o, s, a)
                            }
                        }, {
                            key: "sdtp",
                            value: function (t) {
                                for (var n = t.samples || [], r = n.length, i = new Uint8Array(4 + r), o = 0; o < r; o++) {
                                    var a = n[o].flags;
                                    i[o + 4] = a.isLeading << 6 | a.dependsOn << 4 | a.isDependedOn << 2 | a.hasRedundancy
                                }
                                return e.box(e.types.sdtp, i)
                            }
                        }, {
                            key: "trun",
                            value: function (t, n) {
                                var r = t.samples || [],
                                    i = r.length,
                                    o = 12 + 16 * i,
                                    a = new Uint8Array(o);
                                n += 8 + o, a.set([0, 0, 15, 1, i >>> 24 & 255, i >>> 16 & 255, i >>> 8 & 255, 255 & i, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n], 0);
                                for (var s = 0; s < i; s++) {
                                    var u = r[s].duration,
                                        f = r[s].size,
                                        c = r[s].flags,
                                        l = r[s].cts;
                                    a.set([u >>> 24 & 255, u >>> 16 & 255, u >>> 8 & 255, 255 & u, f >>> 24 & 255, f >>> 16 & 255, f >>> 8 & 255, 255 & f, c.isLeading << 2 | c.dependsOn, c.isDependedOn << 6 | c.hasRedundancy << 4 | c.isNonSync, 0, 0, l >>> 24 & 255, l >>> 16 & 255, l >>> 8 & 255, 255 & l], 12 + 16 * s)
                                }
                                return e.box(e.types.trun, a)
                            }
                        }, {
                            key: "mdat",
                            value: function (t) {
                                return e.box(e.types.mdat, t)
                            }
                        }]), e
                    }();
                    t.default = o
                }, function (e, t, n) {
                    (function (e) {
                        (function (e, n) {
                            n(t)
                        })(0, (function (t) {
                            "use strict";
                            var n = "undefined" !== typeof window ? window : "undefined" !== typeof e ? e : "undefined" !== typeof self ? self : {};

                            function r(e) {
                                return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e["default"] : e
                            }

                            function i(e, t) {
                                return t = {
                                    exports: {}
                                }, e(t, t.exports), t.exports
                            }
                            var o = Math.ceil,
                                a = Math.floor,
                                s = function (e) {
                                    return isNaN(e = +e) ? 0 : (e > 0 ? a : o)(e)
                                },
                                u = function (e) {
                                    if (void 0 == e) throw TypeError("Can't call method on  " + e);
                                    return e
                                },
                                f = function (e) {
                                    return function (t, n) {
                                        var r, i, o = String(u(t)),
                                            a = s(n),
                                            f = o.length;
                                        return a < 0 || a >= f ? e ? "" : void 0 : (r = o.charCodeAt(a), r < 55296 || r > 56319 || a + 1 === f || (i = o.charCodeAt(a + 1)) < 56320 || i > 57343 ? e ? o.charAt(a) : r : e ? o.slice(a, a + 2) : i - 56320 + (r - 55296 << 10) + 65536)
                                    }
                                },
                                c = !0,
                                l = i((function (e) {
                                    var t = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
                                    "number" == typeof __g && (__g = t)
                                })),
                                d = i((function (e) {
                                    var t = e.exports = {
                                        version: "2.5.3"
                                    };
                                    "number" == typeof __e && (__e = t)
                                })),
                                h = (d.version, function (e) {
                                    if ("function" != typeof e) throw TypeError(e + " is not a function!");
                                    return e
                                }),
                                p = function (e, t, n) {
                                    if (h(e), void 0 === t) return e;
                                    switch (n) {
                                        case 1:
                                            return function (n) {
                                                return e.call(t, n)
                                            };
                                        case 2:
                                            return function (n, r) {
                                                return e.call(t, n, r)
                                            };
                                        case 3:
                                            return function (n, r, i) {
                                                return e.call(t, n, r, i)
                                            }
                                    }
                                    return function () {
                                        return e.apply(t, arguments)
                                    }
                                },
                                v = function (e) {
                                    return "object" === typeof e ? null !== e : "function" === typeof e
                                },
                                m = function (e) {
                                    if (!v(e)) throw TypeError(e + " is not an object!");
                                    return e
                                },
                                y = function (e) {
                                    try {
                                        return !!e()
                                    } catch (t) {
                                        return !0
                                    }
                                },
                                g = !y((function () {
                                    return 7 != Object.defineProperty({}, "a", {
                                        get: function () {
                                            return 7
                                        }
                                    }).a
                                })),
                                b = l.document,
                                _ = v(b) && v(b.createElement),
                                w = function (e) {
                                    return _ ? b.createElement(e) : {}
                                },
                                S = !g && !y((function () {
                                    return 7 != Object.defineProperty(w("div"), "a", {
                                        get: function () {
                                            return 7
                                        }
                                    }).a
                                })),
                                k = function (e, t) {
                                    if (!v(e)) return e;
                                    var n, r;
                                    if (t && "function" == typeof (n = e.toString) && !v(r = n.call(e))) return r;
                                    if ("function" == typeof (n = e.valueOf) && !v(r = n.call(e))) return r;
                                    if (!t && "function" == typeof (n = e.toString) && !v(r = n.call(e))) return r;
                                    throw TypeError("Can't convert object to primitive value")
                                },
                                E = Object.defineProperty,
                                O = g ? Object.defineProperty : function (e, t, n) {
                                    if (m(e), t = k(t, !0), m(n), S) try {
                                        return E(e, t, n)
                                    } catch (r) {}
                                    if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
                                    return "value" in n && (e[t] = n.value), e
                                },
                                T = {
                                    f: O
                                },
                                A = function (e, t) {
                                    return {
                                        enumerable: !(1 & e),
                                        configurable: !(2 & e),
                                        writable: !(4 & e),
                                        value: t
                                    }
                                },
                                x = g ? function (e, t, n) {
                                    return T.f(e, t, A(1, n))
                                } : function (e, t, n) {
                                    return e[t] = n, e
                                },
                                R = "prototype",
                                M = function (e, t, n) {
                                    var r, i, o, a = e & M.F,
                                        s = e & M.G,
                                        u = e & M.S,
                                        f = e & M.P,
                                        c = e & M.B,
                                        h = e & M.W,
                                        v = s ? d : d[t] || (d[t] = {}),
                                        m = v[R],
                                        y = s ? l : u ? l[t] : (l[t] || {})[R];
                                    for (r in s && (n = t), n) i = !a && y && void 0 !== y[r], i && r in v || (o = i ? y[r] : n[r], v[r] = s && "function" != typeof y[r] ? n[r] : c && i ? p(o, l) : h && y[r] == o ? function (e) {
                                        var t = function (t, n, r) {
                                            if (this instanceof e) {
                                                switch (arguments.length) {
                                                    case 0:
                                                        return new e;
                                                    case 1:
                                                        return new e(t);
                                                    case 2:
                                                        return new e(t, n)
                                                }
                                                return new e(t, n, r)
                                            }
                                            return e.apply(this, arguments)
                                        };
                                        return t[R] = e[R], t
                                    }(o) : f && "function" == typeof o ? p(Function.call, o) : o, f && ((v.virtual || (v.virtual = {}))[r] = o, e & M.R && m && !m[r] && x(m, r, o)))
                                };
                            M.F = 1, M.G = 2, M.S = 4, M.P = 8, M.B = 16, M.W = 32, M.U = 64, M.R = 128;
                            var D = M,
                                L = x,
                                B = {}.hasOwnProperty,
                                P = function (e, t) {
                                    return B.call(e, t)
                                },
                                C = {},
                                I = {}.toString,
                                j = function (e) {
                                    return I.call(e).slice(8, -1)
                                },
                                N = Object("z").propertyIsEnumerable(0) ? Object : function (e) {
                                    return "String" == j(e) ? e.split("") : Object(e)
                                },
                                F = function (e) {
                                    return N(u(e))
                                },
                                U = Math.min,
                                V = function (e) {
                                    return e > 0 ? U(s(e), 9007199254740991) : 0
                                },
                                z = Math.max,
                                G = Math.min,
                                W = function (e, t) {
                                    return e = s(e), e < 0 ? z(e + t, 0) : G(e, t)
                                },
                                q = function (e) {
                                    return function (t, n, r) {
                                        var i, o = F(t),
                                            a = V(o.length),
                                            s = W(r, a);
                                        if (e && n != n) {
                                            while (a > s)
                                                if (i = o[s++], i != i) return !0
                                        } else
                                            for (; a > s; s++)
                                                if ((e || s in o) && o[s] === n) return e || s || 0;
                                        return !e && -1
                                    }
                                },
                                H = "__core-js_shared__",
                                K = l[H] || (l[H] = {}),
                                Y = function (e) {
                                    return K[e] || (K[e] = {})
                                },
                                J = 0,
                                X = Math.random(),
                                $ = function (e) {
                                    return "Symbol(".concat(void 0 === e ? "" : e, ")_", (++J + X).toString(36))
                                },
                                Q = Y("keys"),
                                Z = function (e) {
                                    return Q[e] || (Q[e] = $(e))
                                },
                                ee = q(!1),
                                te = Z("IE_PROTO"),
                                ne = function (e, t) {
                                    var n, r = F(e),
                                        i = 0,
                                        o = [];
                                    for (n in r) n != te && P(r, n) && o.push(n);
                                    while (t.length > i) P(r, n = t[i++]) && (~ee(o, n) || o.push(n));
                                    return o
                                },
                                re = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),
                                ie = Object.keys || function (e) {
                                    return ne(e, re)
                                },
                                oe = g ? Object.defineProperties : function (e, t) {
                                    m(e);
                                    var n, r = ie(t),
                                        i = r.length,
                                        o = 0;
                                    while (i > o) T.f(e, n = r[o++], t[n]);
                                    return e
                                },
                                ae = l.document,
                                se = ae && ae.documentElement,
                                ue = Z("IE_PROTO"),
                                fe = function () {},
                                ce = "prototype",
                                le = function () {
                                    var e, t = w("iframe"),
                                        n = re.length,
                                        r = "<",
                                        i = ">";
                                    t.style.display = "none", se.appendChild(t), t.src = "javascript:", e = t.contentWindow.document, e.open(), e.write(r + "script" + i + "document.F=Object" + r + "/script" + i), e.close(), le = e.F;
                                    while (n--) delete le[ce][re[n]];
                                    return le()
                                },
                                de = Object.create || function (e, t) {
                                    var n;
                                    return null !== e ? (fe[ce] = m(e), n = new fe, fe[ce] = null, n[ue] = e) : n = le(), void 0 === t ? n : oe(n, t)
                                },
                                he = i((function (e) {
                                    var t = Y("wks"),
                                        n = l.Symbol,
                                        r = "function" == typeof n,
                                        i = e.exports = function (e) {
                                            return t[e] || (t[e] = r && n[e] || (r ? n : $)("Symbol." + e))
                                        };
                                    i.store = t
                                })),
                                pe = T.f,
                                ve = he("toStringTag"),
                                me = function (e, t, n) {
                                    e && !P(e = n ? e : e.prototype, ve) && pe(e, ve, {
                                        configurable: !0,
                                        value: t
                                    })
                                },
                                ye = {};
                            x(ye, he("iterator"), (function () {
                                return this
                            }));
                            var ge = function (e, t, n) {
                                    e.prototype = de(ye, {
                                        next: A(1, n)
                                    }), me(e, t + " Iterator")
                                },
                                be = function (e) {
                                    return Object(u(e))
                                },
                                _e = Z("IE_PROTO"),
                                we = Object.prototype,
                                Se = Object.getPrototypeOf || function (e) {
                                    return e = be(e), P(e, _e) ? e[_e] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? we : null
                                },
                                ke = he("iterator"),
                                Ee = !([].keys && "next" in [].keys()),
                                Oe = "@@iterator",
                                Te = "keys",
                                Ae = "values",
                                xe = function () {
                                    return this
                                },
                                Re = function (e, t, n, r, i, o, a) {
                                    ge(n, t, r);
                                    var s, u, f, l = function (e) {
                                            if (!Ee && e in v) return v[e];
                                            switch (e) {
                                                case Te:
                                                    return function () {
                                                        return new n(this, e)
                                                    };
                                                case Ae:
                                                    return function () {
                                                        return new n(this, e)
                                                    }
                                            }
                                            return function () {
                                                return new n(this, e)
                                            }
                                        },
                                        d = t + " Iterator",
                                        h = i == Ae,
                                        p = !1,
                                        v = e.prototype,
                                        m = v[ke] || v[Oe] || i && v[i],
                                        y = !Ee && m || l(i),
                                        g = i ? h ? l("entries") : y : void 0,
                                        b = "Array" == t && v.entries || m;
                                    if (b && (f = Se(b.call(new e)), f !== Object.prototype && f.next && (me(f, d, !0), c || P(f, ke) || x(f, ke, xe))), h && m && m.name !== Ae && (p = !0, y = function () {
                                            return m.call(this)
                                        }), c && !a || !Ee && !p && v[ke] || x(v, ke, y), C[t] = y, C[d] = xe, i)
                                        if (s = {
                                                values: h ? y : l(Ae),
                                                keys: o ? y : l(Te),
                                                entries: g
                                            }, a)
                                            for (u in s) u in v || L(v, u, s[u]);
                                        else D(D.P + D.F * (Ee || p), t, s);
                                    return s
                                },
                                Me = f(!0);
                            Re(String, "String", (function (e) {
                                this._t = String(e), this._i = 0
                            }), (function () {
                                var e, t = this._t,
                                    n = this._i;
                                return n >= t.length ? {
                                    value: void 0,
                                    done: !0
                                } : (e = Me(t, n), this._i += e.length, {
                                    value: e,
                                    done: !1
                                })
                            }));
                            var De = function (e, t, n, r) {
                                    try {
                                        return r ? t(m(n)[0], n[1]) : t(n)
                                    } catch (o) {
                                        var i = e["return"];
                                        throw void 0 !== i && m(i.call(e)), o
                                    }
                                },
                                Le = he("iterator"),
                                Be = Array.prototype,
                                Pe = function (e) {
                                    return void 0 !== e && (C.Array === e || Be[Le] === e)
                                },
                                Ce = function (e, t, n) {
                                    t in e ? T.f(e, t, A(0, n)) : e[t] = n
                                },
                                Ie = he("toStringTag"),
                                je = "Arguments" == j(function () {
                                    return arguments
                                }()),
                                Ne = function (e, t) {
                                    try {
                                        return e[t]
                                    } catch (n) {}
                                },
                                Fe = function (e) {
                                    var t, n, r;
                                    return void 0 === e ? "Undefined" : null === e ? "Null" : "string" == typeof (n = Ne(t = Object(e), Ie)) ? n : je ? j(t) : "Object" == (r = j(t)) && "function" == typeof t.callee ? "Arguments" : r
                                },
                                Ue = he("iterator"),
                                Ve = d.getIteratorMethod = function (e) {
                                    if (void 0 != e) return e[Ue] || e["@@iterator"] || C[Fe(e)]
                                },
                                ze = he("iterator"),
                                Ge = !1;
                            try {
                                var We = [7][ze]();
                                We["return"] = function () {
                                    Ge = !0
                                }
                            } catch (Ro) {}
                            var qe = function (e, t) {
                                if (!t && !Ge) return !1;
                                var n = !1;
                                try {
                                    var r = [7],
                                        i = r[ze]();
                                    i.next = function () {
                                        return {
                                            done: n = !0
                                        }
                                    }, r[ze] = function () {
                                        return i
                                    }, e(r)
                                } catch (Ro) {}
                                return n
                            };
                            D(D.S + D.F * !qe((function (e) {})), "Array", {
                                from: function (e) {
                                    var t, n, r, i, o = be(e),
                                        a = "function" == typeof this ? this : Array,
                                        s = arguments.length,
                                        u = s > 1 ? arguments[1] : void 0,
                                        f = void 0 !== u,
                                        c = 0,
                                        l = Ve(o);
                                    if (f && (u = p(u, s > 2 ? arguments[2] : void 0, 2)), void 0 == l || a == Array && Pe(l))
                                        for (t = V(o.length), n = new a(t); t > c; c++) Ce(n, c, f ? u(o[c], c) : o[c]);
                                    else
                                        for (i = l.call(o), n = new a; !(r = i.next()).done; c++) Ce(n, c, f ? De(i, u, [r.value, c], !0) : r.value);
                                    return n.length = c, n
                                }
                            });
                            var He = d.Array.from,
                                Ke = i((function (e) {
                                    e.exports = {
                                        default: He,
                                        __esModule: !0
                                    }
                                })),
                                Ye = r(Ke),
                                Je = i((function (e, t) {
                                    t.__esModule = !0;
                                    var n = r(Ke);

                                    function r(e) {
                                        return e && e.__esModule ? e : {
                                            default: e
                                        }
                                    }
                                    t.default = function (e) {
                                        if (Array.isArray(e)) {
                                            for (var t = 0, r = Array(e.length); t < e.length; t++) r[t] = e[t];
                                            return r
                                        }
                                        return (0, n.default)(e)
                                    }
                                })),
                                Xe = r(Je),
                                $e = function (e, t) {
                                    return {
                                        value: t,
                                        done: !!e
                                    }
                                };
                            Re(Array, "Array", (function (e, t) {
                                this._t = F(e), this._i = 0, this._k = t
                            }), (function () {
                                var e = this._t,
                                    t = this._k,
                                    n = this._i++;
                                return !e || n >= e.length ? (this._t = void 0, $e(1)) : $e(0, "keys" == t ? n : "values" == t ? e[n] : [n, e[n]])
                            }), "values");
                            C.Arguments = C.Array;
                            for (var Qe = he("toStringTag"), Ze = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","), et = 0; et < Ze.length; et++) {
                                var tt = Ze[et],
                                    nt = l[tt],
                                    rt = nt && nt.prototype;
                                rt && !rt[Qe] && x(rt, Qe, tt), C[tt] = C.Array
                            }
                            var it = he,
                                ot = {
                                    f: it
                                },
                                at = ot.f("iterator"),
                                st = i((function (e) {
                                    e.exports = {
                                        default: at,
                                        __esModule: !0
                                    }
                                }));
                            r(st);
                            var ut = i((function (e) {
                                    var t = $("meta"),
                                        n = T.f,
                                        r = 0,
                                        i = Object.isExtensible || function () {
                                            return !0
                                        },
                                        o = !y((function () {
                                            return i(Object.preventExtensions({}))
                                        })),
                                        a = function (e) {
                                            n(e, t, {
                                                value: {
                                                    i: "O" + ++r,
                                                    w: {}
                                                }
                                            })
                                        },
                                        s = function (e, n) {
                                            if (!v(e)) return "symbol" == typeof e ? e : ("string" == typeof e ? "S" : "P") + e;
                                            if (!P(e, t)) {
                                                if (!i(e)) return "F";
                                                if (!n) return "E";
                                                a(e)
                                            }
                                            return e[t].i
                                        },
                                        u = function (e, n) {
                                            if (!P(e, t)) {
                                                if (!i(e)) return !0;
                                                if (!n) return !1;
                                                a(e)
                                            }
                                            return e[t].w
                                        },
                                        f = function (e) {
                                            return o && c.NEED && i(e) && !P(e, t) && a(e), e
                                        },
                                        c = e.exports = {
                                            KEY: t,
                                            NEED: !1,
                                            fastKey: s,
                                            getWeak: u,
                                            onFreeze: f
                                        }
                                })),
                                ft = (ut.KEY, ut.NEED, ut.fastKey, ut.getWeak, ut.onFreeze, T.f),
                                ct = function (e) {
                                    var t = d.Symbol || (d.Symbol = c ? {} : l.Symbol || {});
                                    "_" == e.charAt(0) || e in t || ft(t, e, {
                                        value: ot.f(e)
                                    })
                                },
                                lt = Object.getOwnPropertySymbols,
                                dt = {
                                    f: lt
                                },
                                ht = {}.propertyIsEnumerable,
                                pt = {
                                    f: ht
                                },
                                vt = function (e) {
                                    var t = ie(e),
                                        n = dt.f;
                                    if (n) {
                                        var r, i = n(e),
                                            o = pt.f,
                                            a = 0;
                                        while (i.length > a) o.call(e, r = i[a++]) && t.push(r)
                                    }
                                    return t
                                },
                                mt = Array.isArray || function (e) {
                                    return "Array" == j(e)
                                },
                                yt = re.concat("length", "prototype"),
                                gt = Object.getOwnPropertyNames || function (e) {
                                    return ne(e, yt)
                                },
                                bt = {
                                    f: gt
                                },
                                _t = bt.f,
                                wt = {}.toString,
                                St = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
                                kt = function (e) {
                                    try {
                                        return _t(e)
                                    } catch (Ro) {
                                        return St.slice()
                                    }
                                },
                                Et = function (e) {
                                    return St && "[object Window]" == wt.call(e) ? kt(e) : _t(F(e))
                                },
                                Ot = {
                                    f: Et
                                },
                                Tt = Object.getOwnPropertyDescriptor,
                                At = g ? Tt : function (e, t) {
                                    if (e = F(e), t = k(t, !0), S) try {
                                        return Tt(e, t)
                                    } catch (Ro) {}
                                    if (P(e, t)) return A(!pt.f.call(e, t), e[t])
                                },
                                xt = {
                                    f: At
                                },
                                Rt = ut.KEY,
                                Mt = xt.f,
                                Dt = T.f,
                                Lt = Ot.f,
                                Bt = l.Symbol,
                                Pt = l.JSON,
                                Ct = Pt && Pt.stringify,
                                It = "prototype",
                                jt = he("_hidden"),
                                Nt = he("toPrimitive"),
                                Ft = {}.propertyIsEnumerable,
                                Ut = Y("symbol-registry"),
                                Vt = Y("symbols"),
                                zt = Y("op-symbols"),
                                Gt = Object[It],
                                Wt = "function" == typeof Bt,
                                qt = l.QObject,
                                Ht = !qt || !qt[It] || !qt[It].findChild,
                                Kt = g && y((function () {
                                    return 7 != de(Dt({}, "a", {
                                        get: function () {
                                            return Dt(this, "a", {
                                                value: 7
                                            }).a
                                        }
                                    })).a
                                })) ? function (e, t, n) {
                                    var r = Mt(Gt, t);
                                    r && delete Gt[t], Dt(e, t, n), r && e !== Gt && Dt(Gt, t, r)
                                } : Dt,
                                Yt = function (e) {
                                    var t = Vt[e] = de(Bt[It]);
                                    return t._k = e, t
                                },
                                Jt = Wt && "symbol" == typeof Bt.iterator ? function (e) {
                                    return "symbol" == typeof e
                                } : function (e) {
                                    return e instanceof Bt
                                },
                                Xt = function (e, t, n) {
                                    return e === Gt && Xt(zt, t, n), m(e), t = k(t, !0), m(n), P(Vt, t) ? (n.enumerable ? (P(e, jt) && e[jt][t] && (e[jt][t] = !1), n = de(n, {
                                        enumerable: A(0, !1)
                                    })) : (P(e, jt) || Dt(e, jt, A(1, {})), e[jt][t] = !0), Kt(e, t, n)) : Dt(e, t, n)
                                },
                                $t = function (e, t) {
                                    m(e);
                                    var n, r = vt(t = F(t)),
                                        i = 0,
                                        o = r.length;
                                    while (o > i) Xt(e, n = r[i++], t[n]);
                                    return e
                                },
                                Qt = function (e, t) {
                                    return void 0 === t ? de(e) : $t(de(e), t)
                                },
                                Zt = function (e) {
                                    var t = Ft.call(this, e = k(e, !0));
                                    return !(this === Gt && P(Vt, e) && !P(zt, e)) && (!(t || !P(this, e) || !P(Vt, e) || P(this, jt) && this[jt][e]) || t)
                                },
                                en = function (e, t) {
                                    if (e = F(e), t = k(t, !0), e !== Gt || !P(Vt, t) || P(zt, t)) {
                                        var n = Mt(e, t);
                                        return !n || !P(Vt, t) || P(e, jt) && e[jt][t] || (n.enumerable = !0), n
                                    }
                                },
                                tn = function (e) {
                                    var t, n = Lt(F(e)),
                                        r = [],
                                        i = 0;
                                    while (n.length > i) P(Vt, t = n[i++]) || t == jt || t == Rt || r.push(t);
                                    return r
                                },
                                nn = function (e) {
                                    var t, n = e === Gt,
                                        r = Lt(n ? zt : F(e)),
                                        i = [],
                                        o = 0;
                                    while (r.length > o) !P(Vt, t = r[o++]) || n && !P(Gt, t) || i.push(Vt[t]);
                                    return i
                                };
                            Wt || (Bt = function () {
                                if (this instanceof Bt) throw TypeError("Symbol is not a constructor!");
                                var e = $(arguments.length > 0 ? arguments[0] : void 0),
                                    t = function (n) {
                                        this === Gt && t.call(zt, n), P(this, jt) && P(this[jt], e) && (this[jt][e] = !1), Kt(this, e, A(1, n))
                                    };
                                return g && Ht && Kt(Gt, e, {
                                    configurable: !0,
                                    set: t
                                }), Yt(e)
                            }, L(Bt[It], "toString", (function () {
                                return this._k
                            })), xt.f = en, T.f = Xt, bt.f = Ot.f = tn, pt.f = Zt, dt.f = nn, g && !c && L(Gt, "propertyIsEnumerable", Zt, !0), ot.f = function (e) {
                                return Yt(he(e))
                            }), D(D.G + D.W + D.F * !Wt, {
                                Symbol: Bt
                            });
                            for (var rn = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), on = 0; rn.length > on;) he(rn[on++]);
                            for (var an = ie(he.store), sn = 0; an.length > sn;) ct(an[sn++]);
                            D(D.S + D.F * !Wt, "Symbol", {
                                for: function (e) {
                                    return P(Ut, e += "") ? Ut[e] : Ut[e] = Bt(e)
                                },
                                keyFor: function (e) {
                                    if (!Jt(e)) throw TypeError(e + " is not a symbol!");
                                    for (var t in Ut)
                                        if (Ut[t] === e) return t
                                },
                                useSetter: function () {
                                    Ht = !0
                                },
                                useSimple: function () {
                                    Ht = !1
                                }
                            }), D(D.S + D.F * !Wt, "Object", {
                                create: Qt,
                                defineProperty: Xt,
                                defineProperties: $t,
                                getOwnPropertyDescriptor: en,
                                getOwnPropertyNames: tn,
                                getOwnPropertySymbols: nn
                            }), Pt && D(D.S + D.F * (!Wt || y((function () {
                                var e = Bt();
                                return "[null]" != Ct([e]) || "{}" != Ct({
                                    a: e
                                }) || "{}" != Ct(Object(e))
                            }))), "JSON", {
                                stringify: function (e) {
                                    var t, n, r = [e],
                                        i = 1;
                                    while (arguments.length > i) r.push(arguments[i++]);
                                    if (n = t = r[1], (v(t) || void 0 !== e) && !Jt(e)) return mt(t) || (t = function (e, t) {
                                        if ("function" == typeof n && (t = n.call(this, e, t)), !Jt(t)) return t
                                    }), r[1] = t, Ct.apply(Pt, r)
                                }
                            }), Bt[It][Nt] || x(Bt[It], Nt, Bt[It].valueOf), me(Bt, "Symbol"), me(Math, "Math", !0), me(l.JSON, "JSON", !0), ct("asyncIterator"), ct("observable");
                            var un = d.Symbol,
                                fn = i((function (e) {
                                    e.exports = {
                                        default: un,
                                        __esModule: !0
                                    }
                                }));
                            r(fn);
                            var cn = i((function (e, t) {
                                    t.__esModule = !0;
                                    var n = o(st),
                                        r = o(fn),
                                        i = "function" === typeof r.default && "symbol" === typeof n.default ? function (e) {
                                            return typeof e
                                        } : function (e) {
                                            return e && "function" === typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : typeof e
                                        };

                                    function o(e) {
                                        return e && e.__esModule ? e : {
                                            default: e
                                        }
                                    }
                                    t.default = "function" === typeof r.default && "symbol" === i(n.default) ? function (e) {
                                        return "undefined" === typeof e ? "undefined" : i(e)
                                    } : function (e) {
                                        return e && "function" === typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : "undefined" === typeof e ? "undefined" : i(e)
                                    }
                                })),
                                ln = r(cn),
                                dn = function (e, t) {
                                    var n = (d.Object || {})[e] || Object[e],
                                        r = {};
                                    r[e] = t(n), D(D.S + D.F * y((function () {
                                        n(1)
                                    })), "Object", r)
                                };
                            dn("keys", (function () {
                                return function (e) {
                                    return ie(be(e))
                                }
                            }));
                            var hn = d.Object.keys,
                                pn = i((function (e) {
                                    e.exports = {
                                        default: hn,
                                        __esModule: !0
                                    }
                                })),
                                vn = r(pn),
                                mn = Math.floor,
                                yn = function (e) {
                                    return !v(e) && isFinite(e) && mn(e) === e
                                };
                            D(D.S, "Number", {
                                isInteger: yn
                            });
                            var gn = d.Number.isInteger,
                                bn = i((function (e) {
                                    e.exports = {
                                        default: gn,
                                        __esModule: !0
                                    }
                                })),
                                _n = r(bn),
                                wn = "\t\n\v\f\r   ᠎             　\u2028\u2029\ufeff",
                                Sn = "[" + wn + "]",
                                kn = "​",
                                En = RegExp("^" + Sn + Sn + "*"),
                                On = RegExp(Sn + Sn + "*$"),
                                Tn = function (e, t, n) {
                                    var r = {},
                                        i = y((function () {
                                            return !!wn[e]() || kn[e]() != kn
                                        })),
                                        o = r[e] = i ? t(An) : wn[e];
                                    n && (r[n] = o), D(D.P + D.F * i, "String", r)
                                },
                                An = Tn.trim = function (e, t) {
                                    return e = String(u(e)), 1 & t && (e = e.replace(En, "")), 2 & t && (e = e.replace(On, "")), e
                                },
                                xn = Tn,
                                Rn = l.parseFloat,
                                Mn = xn.trim,
                                Dn = 1 / Rn(wn + "-0") !== -1 / 0 ? function (e) {
                                    var t = Mn(String(e), 3),
                                        n = Rn(t);
                                    return 0 === n && "-" == t.charAt(0) ? -0 : n
                                } : Rn;
                            D(D.S + D.F * (Number.parseFloat != Dn), "Number", {
                                parseFloat: Dn
                            });
                            var Ln = parseFloat,
                                Bn = i((function (e) {
                                    e.exports = {
                                        default: Ln,
                                        __esModule: !0
                                    }
                                })),
                                Pn = r(Bn);

                            function Cn(e) {
                                return "undefined" !== typeof e
                            }

                            function In(e) {
                                return void 0 === e || null === e
                            }

                            function jn(e) {
                                return Array.isArray(e)
                            }

                            function Nn(e) {
                                return "function" === typeof e
                            }

                            function Fn(e) {
                                return Object(e) === e && "[object Object]" === String(e) && !Nn(e) && !jn(e)
                            }

                            function Un(e) {
                                return "number" === typeof e
                            }

                            function Vn(e) {
                                return !jn(e) && e - Pn(e) + 1 >= 0
                            }

                            function zn(e) {
                                return _n(e)
                            }

                            function Gn(e) {
                                return jn(e) ? 0 === e.length : Fn(e) ? 0 === vn(e).length : !e
                            }

                            function Wn(e) {
                                return e instanceof Event || (e && e.originalEvent) instanceof Event
                            }

                            function qn(e) {
                                return e instanceof Blob
                            }

                            function Hn(e) {
                                return qn(e) && Yn(e.name)
                            }

                            function Kn(e) {
                                return "[object Date]" === Object.prototype.toString.call(e)
                            }

                            function Yn(e) {
                                return "string" === typeof e || e instanceof String
                            }

                            function Jn(e) {
                                return "boolean" === typeof e
                            }

                            function Xn(e) {
                                return !!e && ("object" === ("undefined" === typeof e ? "undefined" : ln(e)) || "function" === typeof e) && "function" === typeof e.then
                            }

                            function $n(e) {
                                return In(e) || Jn(e) || Yn(e) || Un(e)
                            }

                            function Qn(e) {
                                return Yn(e) && !!e.match(/^((https?|ftp|rtsp|mms):\/\/)(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?(([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-z_!~*'()-]+\.)*([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.[a-z]{2,6}|localhost)(:[0-9]{1,4})?((\/?)|(\/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+\/?)$/i)
                            }

                            function Zn(e) {
                                return !!("object" === ("undefined" === typeof Node ? "undefined" : ln(Node)) ? e instanceof Node : e && "object" === ("undefined" === typeof e ? "undefined" : ln(e)) && "number" === typeof e.nodeType && "string" === typeof e.nodeName)
                            }

                            function er(e) {
                                return !!("object" === ("undefined" === typeof HTMLElement ? "undefined" : ln(HTMLElement)) ? e instanceof HTMLElement : e && "object" === ("undefined" === typeof e ? "undefined" : ln(e)) && null !== e && 1 === e.nodeType && "string" === typeof e.nodeName)
                            }

                            function tr(e, t) {
                                return !(!Zn(e) || !Zn(t)) && t.parentNode === e
                            }

                            function nr(e, t) {
                                if (!Zn(e) || !Zn(t)) return !1;
                                while (t.parentNode)
                                    if (t = t.parentNode, t === e) return !0;
                                return !1
                            }

                            function rr(e) {
                                return /<[^>]+?>/.test(e)
                            }

                            function ir(e) {
                                return e instanceof Error
                            }

                            function or(e) {
                                return e instanceof RegExp
                            }

                            function ar(e) {
                                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function (e, t, n) {
                                    e[t] = n
                                };

                                function n(r, i, o) {
                                    if (jn(r) || Fn(r)) {
                                        for (var a in i = $n(i) ? Fn(r) ? {} : [] : i, r) t(i, a, n(r[a], i[a], a));
                                        return i
                                    }
                                    return e(r, i, o)
                                }
                                return n
                            }
                            var sr = ar((function (e) {
                                return e
                            }));

                            function ur(e) {
                                if ($n(e)) throw new TypeError("deepClone only accept non primitive type");
                                return sr(e)
                            }

                            function fr() {
                                for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];
                                if (t.length < 2) throw new Error("deepAssign accept two and more argument");
                                for (var r = t.length - 1; r > -1; r--)
                                    if ($n(t[r])) throw new TypeError("deepAssign only accept non primitive type");
                                var i = t.shift();
                                return t.forEach((function (e) {
                                    return sr(e, i)
                                })), i
                            }

                            function cr(e, t) {
                                return e.replace(/(^|[^a-zA-Z]+)([a-zA-Z])/g, (function (e, n, r, i) {
                                    return t || 0 !== i ? r.toUpperCase() : r.toLowerCase()
                                }))
                            }

                            function lr(e) {
                                return cr(e).replace(/([A-Z])/g, (function (e) {
                                    return "-" + e.toLowerCase()
                                }))
                            }

                            function dr(e, t) {
                                return e.bind ? e.bind(t) : e.apply ? function () {
                                    for (var n = arguments.length, r = Array(n), i = 0; i < n; i++) r[i] = arguments[i];
                                    return e.apply(t, r)
                                } : function () {
                                    for (var n = arguments.length, r = Array(n), i = 0; i < n; i++) r[i] = arguments[i];
                                    return e.call.apply(e, [t].concat(Xe(r)))
                                }
                            }

                            function hr() {
                                return pr() + pr() + "-" + pr() + "-" + pr() + "-" + pr() + "-" + pr() + pr() + pr()
                            }

                            function pr() {
                                return (65536 * (1 + Math.random()) | 0).toString(16).substring(1)
                            }

                            function vr(e) {
                                var t = "";
                                while (t.length < e) t += pr();
                                return t.slice(0, e)
                            }

                            function mr(e, t) {
                                var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
                                    r = n.throwError,
                                    i = void 0 !== r && r,
                                    o = n.backup;
                                if (Yn(t) && (t = t.split(".")), !jn(t)) throw new TypeError("keys of getDeepProperty must be string or Array<string>");
                                for (var a = [], s = e, u = 0, f = t.length; u < f; u++) {
                                    var c = t[u];
                                    if (In(s)) {
                                        if (i) throw new Error("obj" + (a.length > 0 ? "." + a.join(".") : " itself") + " is " + s);
                                        return o
                                    }
                                    s = s[c], a.push(c)
                                }
                                return s
                            }
                            var yr, gr, br, _r = function (e, t, n, r) {
                                    if (!(e instanceof t) || void 0 !== r && r in e) throw TypeError(n + ": incorrect invocation!");
                                    return e
                                },
                                wr = i((function (e) {
                                    var t = {},
                                        n = {},
                                        r = e.exports = function (e, r, i, o, a) {
                                            var s, u, f, c, l = a ? function () {
                                                    return e
                                                } : Ve(e),
                                                d = p(i, o, r ? 2 : 1),
                                                h = 0;
                                            if ("function" != typeof l) throw TypeError(e + " is not iterable!");
                                            if (Pe(l)) {
                                                for (s = V(e.length); s > h; h++)
                                                    if (c = r ? d(m(u = e[h])[0], u[1]) : d(e[h]), c === t || c === n) return c
                                            } else
                                                for (f = l.call(e); !(u = f.next()).done;)
                                                    if (c = De(f, d, u.value, r), c === t || c === n) return c
                                        };
                                    r.BREAK = t, r.RETURN = n
                                })),
                                Sr = he("species"),
                                kr = function (e, t) {
                                    var n, r = m(e).constructor;
                                    return void 0 === r || void 0 == (n = m(r)[Sr]) ? t : h(n)
                                },
                                Er = function (e, t, n) {
                                    var r = void 0 === n;
                                    switch (t.length) {
                                        case 0:
                                            return r ? e() : e.call(n);
                                        case 1:
                                            return r ? e(t[0]) : e.call(n, t[0]);
                                        case 2:
                                            return r ? e(t[0], t[1]) : e.call(n, t[0], t[1]);
                                        case 3:
                                            return r ? e(t[0], t[1], t[2]) : e.call(n, t[0], t[1], t[2]);
                                        case 4:
                                            return r ? e(t[0], t[1], t[2], t[3]) : e.call(n, t[0], t[1], t[2], t[3])
                                    }
                                    return e.apply(n, t)
                                },
                                Or = l.process,
                                Tr = l.setImmediate,
                                Ar = l.clearImmediate,
                                xr = l.MessageChannel,
                                Rr = l.Dispatch,
                                Mr = 0,
                                Dr = {},
                                Lr = "onreadystatechange",
                                Br = function () {
                                    var e = +this;
                                    if (Dr.hasOwnProperty(e)) {
                                        var t = Dr[e];
                                        delete Dr[e], t()
                                    }
                                },
                                Pr = function (e) {
                                    Br.call(e.data)
                                };
                            Tr && Ar || (Tr = function (e) {
                                var t = [],
                                    n = 1;
                                while (arguments.length > n) t.push(arguments[n++]);
                                return Dr[++Mr] = function () {
                                    Er("function" == typeof e ? e : Function(e), t)
                                }, yr(Mr), Mr
                            }, Ar = function (e) {
                                delete Dr[e]
                            }, "process" == j(Or) ? yr = function (e) {
                                Or.nextTick(p(Br, e, 1))
                            } : Rr && Rr.now ? yr = function (e) {
                                Rr.now(p(Br, e, 1))
                            } : xr ? (gr = new xr, br = gr.port2, gr.port1.onmessage = Pr, yr = p(br.postMessage, br, 1)) : l.addEventListener && "function" == typeof postMessage && !l.importScripts ? (yr = function (e) {
                                l.postMessage(e + "", "*")
                            }, l.addEventListener("message", Pr, !1)) : yr = Lr in w("script") ? function (e) {
                                se.appendChild(w("script"))[Lr] = function () {
                                    se.removeChild(this), Br.call(e)
                                }
                            } : function (e) {
                                setTimeout(p(Br, e, 1), 0)
                            });
                            var Cr = {
                                    set: Tr,
                                    clear: Ar
                                },
                                Ir = Cr.set,
                                jr = l.MutationObserver || l.WebKitMutationObserver,
                                Nr = l.process,
                                Fr = l.Promise,
                                Ur = "process" == j(Nr),
                                Vr = function () {
                                    var e, t, n, r = function () {
                                        var r, i;
                                        Ur && (r = Nr.domain) && r.exit();
                                        while (e) {
                                            i = e.fn, e = e.next;
                                            try {
                                                i()
                                            } catch (Ro) {
                                                throw e ? n() : t = void 0, Ro
                                            }
                                        }
                                        t = void 0, r && r.enter()
                                    };
                                    if (Ur) n = function () {
                                        Nr.nextTick(r)
                                    };
                                    else if (!jr || l.navigator && l.navigator.standalone)
                                        if (Fr && Fr.resolve) {
                                            var i = Fr.resolve();
                                            n = function () {
                                                i.then(r)
                                            }
                                        } else n = function () {
                                            Ir.call(l, r)
                                        };
                                    else {
                                        var o = !0,
                                            a = document.createTextNode("");
                                        new jr(r).observe(a, {
                                            characterData: !0
                                        }), n = function () {
                                            a.data = o = !o
                                        }
                                    }
                                    return function (r) {
                                        var i = {
                                            fn: r,
                                            next: void 0
                                        };
                                        t && (t.next = i), e || (e = i, n()), t = i
                                    }
                                };

                            function zr(e) {
                                var t, n;
                                this.promise = new e((function (e, r) {
                                    if (void 0 !== t || void 0 !== n) throw TypeError("Bad Promise constructor");
                                    t = e, n = r
                                })), this.resolve = h(t), this.reject = h(n)
                            }
                            var Gr, Wr, qr, Hr, Kr = function (e) {
                                    return new zr(e)
                                },
                                Yr = {
                                    f: Kr
                                },
                                Jr = function (e) {
                                    try {
                                        return {
                                            e: !1,
                                            v: e()
                                        }
                                    } catch (Ro) {
                                        return {
                                            e: !0,
                                            v: Ro
                                        }
                                    }
                                },
                                Xr = function (e, t) {
                                    if (m(e), v(t) && t.constructor === e) return t;
                                    var n = Yr.f(e),
                                        r = n.resolve;
                                    return r(t), n.promise
                                },
                                $r = function (e, t, n) {
                                    for (var r in t) n && e[r] ? e[r] = t[r] : x(e, r, t[r]);
                                    return e
                                },
                                Qr = he("species"),
                                Zr = function (e) {
                                    var t = "function" == typeof d[e] ? d[e] : l[e];
                                    g && t && !t[Qr] && T.f(t, Qr, {
                                        configurable: !0,
                                        get: function () {
                                            return this
                                        }
                                    })
                                },
                                ei = Cr.set,
                                ti = Vr(),
                                ni = "Promise",
                                ri = l.TypeError,
                                ii = l.process,
                                oi = l[ni],
                                ai = "process" == Fe(ii),
                                si = function () {},
                                ui = Wr = Yr.f,
                                fi = !! function () {
                                    try {
                                        var e = oi.resolve(1),
                                            t = (e.constructor = {})[he("species")] = function (e) {
                                                e(si, si)
                                            };
                                        return (ai || "function" == typeof PromiseRejectionEvent) && e.then(si) instanceof t
                                    } catch (Ro) {}
                                }(),
                                ci = function (e) {
                                    var t;
                                    return !(!v(e) || "function" != typeof (t = e.then)) && t
                                },
                                li = function (e, t) {
                                    if (!e._n) {
                                        e._n = !0;
                                        var n = e._c;
                                        ti((function () {
                                            var r = e._v,
                                                i = 1 == e._s,
                                                o = 0,
                                                a = function (t) {
                                                    var n, o, a = i ? t.ok : t.fail,
                                                        s = t.resolve,
                                                        u = t.reject,
                                                        f = t.domain;
                                                    try {
                                                        a ? (i || (2 == e._h && pi(e), e._h = 1), !0 === a ? n = r : (f && f.enter(), n = a(r), f && f.exit()), n === t.promise ? u(ri("Promise-chain cycle")) : (o = ci(n)) ? o.call(n, s, u) : s(n)) : u(r)
                                                    } catch (Ro) {
                                                        u(Ro)
                                                    }
                                                };
                                            while (n.length > o) a(n[o++]);
                                            e._c = [], e._n = !1, t && !e._h && di(e)
                                        }))
                                    }
                                },
                                di = function (e) {
                                    ei.call(l, (function () {
                                        var t, n, r, i = e._v,
                                            o = hi(e);
                                        if (o && (t = Jr((function () {
                                                ai ? ii.emit("unhandledRejection", i, e) : (n = l.onunhandledrejection) ? n({
                                                    promise: e,
                                                    reason: i
                                                }) : (r = l.console) && r.error && r.error("Unhandled promise rejection", i)
                                            })), e._h = ai || hi(e) ? 2 : 1), e._a = void 0, o && t.e) throw t.v
                                    }))
                                },
                                hi = function (e) {
                                    return 1 !== e._h && 0 === (e._a || e._c).length
                                },
                                pi = function (e) {
                                    ei.call(l, (function () {
                                        var t;
                                        ai ? ii.emit("rejectionHandled", e) : (t = l.onrejectionhandled) && t({
                                            promise: e,
                                            reason: e._v
                                        })
                                    }))
                                },
                                vi = function (e) {
                                    var t = this;
                                    t._d || (t._d = !0, t = t._w || t, t._v = e, t._s = 2, t._a || (t._a = t._c.slice()), li(t, !0))
                                },
                                mi = function (e) {
                                    var t, n = this;
                                    if (!n._d) {
                                        n._d = !0, n = n._w || n;
                                        try {
                                            if (n === e) throw ri("Promise can't be resolved itself");
                                            (t = ci(e)) ? ti((function () {
                                                var r = {
                                                    _w: n,
                                                    _d: !1
                                                };
                                                try {
                                                    t.call(e, p(mi, r, 1), p(vi, r, 1))
                                                } catch (Ro) {
                                                    vi.call(r, Ro)
                                                }
                                            })): (n._v = e, n._s = 1, li(n, !1))
                                        } catch (Ro) {
                                            vi.call({
                                                _w: n,
                                                _d: !1
                                            }, Ro)
                                        }
                                    }
                                };
                            fi || (oi = function (e) {
                                _r(this, oi, ni, "_h"), h(e), Gr.call(this);
                                try {
                                    e(p(mi, this, 1), p(vi, this, 1))
                                } catch (t) {
                                    vi.call(this, t)
                                }
                            }, Gr = function (e) {
                                this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1
                            }, Gr.prototype = $r(oi.prototype, {
                                then: function (e, t) {
                                    var n = ui(kr(this, oi));
                                    return n.ok = "function" != typeof e || e, n.fail = "function" == typeof t && t, n.domain = ai ? ii.domain : void 0, this._c.push(n), this._a && this._a.push(n), this._s && li(this, !1), n.promise
                                },
                                catch: function (e) {
                                    return this.then(void 0, e)
                                }
                            }), qr = function () {
                                var e = new Gr;
                                this.promise = e, this.resolve = p(mi, e, 1), this.reject = p(vi, e, 1)
                            }, Yr.f = ui = function (e) {
                                return e === oi || e === Hr ? new qr(e) : Wr(e)
                            }), D(D.G + D.W + D.F * !fi, {
                                Promise: oi
                            }), me(oi, ni), Zr(ni), Hr = d[ni], D(D.S + D.F * !fi, ni, {
                                reject: function (e) {
                                    var t = ui(this),
                                        n = t.reject;
                                    return n(e), t.promise
                                }
                            }), D(D.S + D.F * (c || !fi), ni, {
                                resolve: function (e) {
                                    return Xr(c && this === Hr ? oi : this, e)
                                }
                            }), D(D.S + D.F * !(fi && qe((function (e) {
                                oi.all(e)["catch"](si)
                            }))), ni, {
                                all: function (e) {
                                    var t = this,
                                        n = ui(t),
                                        r = n.resolve,
                                        i = n.reject,
                                        o = Jr((function () {
                                            var n = [],
                                                o = 0,
                                                a = 1;
                                            wr(e, !1, (function (e) {
                                                var s = o++,
                                                    u = !1;
                                                n.push(void 0), a++, t.resolve(e).then((function (e) {
                                                    u || (u = !0, n[s] = e, --a || r(n))
                                                }), i)
                                            })), --a || r(n)
                                        }));
                                    return o.e && i(o.v), n.promise
                                },
                                race: function (e) {
                                    var t = this,
                                        n = ui(t),
                                        r = n.reject,
                                        i = Jr((function () {
                                            wr(e, !1, (function (e) {
                                                t.resolve(e).then(n.resolve, r)
                                            }))
                                        }));
                                    return i.e && r(i.v), n.promise
                                }
                            }), D(D.P + D.R, "Promise", {
                                finally: function (e) {
                                    var t = kr(this, d.Promise || l.Promise),
                                        n = "function" == typeof e;
                                    return this.then(n ? function (n) {
                                        return Xr(t, e()).then((function () {
                                            return n
                                        }))
                                    } : e, n ? function (n) {
                                        return Xr(t, e()).then((function () {
                                            throw n
                                        }))
                                    } : e)
                                }
                            }), D(D.S, "Promise", {
                                try: function (e) {
                                    var t = Yr.f(this),
                                        n = Jr(e);
                                    return (n.e ? t.reject : t.resolve)(n.v), t.promise
                                }
                            });
                            var yi = d.Promise,
                                gi = i((function (e) {
                                    e.exports = {
                                        default: yi,
                                        __esModule: !0
                                    }
                                })),
                                bi = r(gi),
                                _i = "undefined" !== typeof window && "[object Object]" !== Object.prototype.toString.call(window);

                            function wi(e) {
                                return Ye(e)
                            }

                            function Si(e) {
                                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function (e, t) {
                                    return +e - +t
                                };
                                return vn(e).sort(t).reduce((function (t, n) {
                                    return t.concat(e[n])
                                }), [])
                            }

                            function ki(e) {
                                for (var t = arguments.length, n = Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
                                return new bi((function (t, r) {
                                    var i = function i(o) {
                                        if (!(o >= e.length)) {
                                            var a = Nn(e[o]) ? e[o].apply(e, Xe(n)) : e[o];
                                            return !1 === a ? r("stop") : bi.resolve(a).then((function () {
                                                return i(o + 1)
                                            })).catch((function (e) {
                                                return r(e || "stop")
                                            }))
                                        }
                                        t()
                                    };
                                    i(0)
                                }))
                            }

                            function Ei(e) {
                                for (var t = arguments.length, n = Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
                                var i = function t(r) {
                                    if (r >= e.length) return !0;
                                    var i = Nn(e[r]) ? e[r].apply(e, Xe(n)) : e[r];
                                    return !1 !== i && t(++r)
                                };
                                return i(0)
                            }

                            function Oi(e, t, n) {
                                var r = e;
                                if (t + n < r.length) {
                                    while (n--)
                                        if (128 !== (192 & r[++t])) return !1;
                                    return !0
                                }
                                return !1
                            }

                            function Ti(e) {
                                var t = [],
                                    n = e,
                                    r = 0,
                                    i = e.length;
                                while (r < i)
                                    if (n[r] < 128) t.push(String.fromCharCode(n[r])), ++r;
                                    else {
                                        if (n[r] < 192);
                                        else if (n[r] < 224) {
                                            if (Oi(n, r, 1)) {
                                                var o = (31 & n[r]) << 6 | 63 & n[r + 1];
                                                if (o >= 128) {
                                                    t.push(String.fromCharCode(65535 & o)), r += 2;
                                                    continue
                                                }
                                            }
                                        } else if (n[r] < 240) {
                                            if (Oi(n, r, 2)) {
                                                var a = (15 & n[r]) << 12 | (63 & n[r + 1]) << 6 | 63 & n[r + 2];
                                                if (a >= 2048 && 55296 !== (63488 & a)) {
                                                    t.push(String.fromCharCode(65535 & a)), r += 3;
                                                    continue
                                                }
                                            }
                                        } else if (n[r] < 248 && Oi(n, r, 3)) {
                                            var s = (7 & n[r]) << 18 | (63 & n[r + 1]) << 12 | (63 & n[r + 2]) << 6 | 63 & n[r + 3];
                                            if (s > 65536 && s < 1114112) {
                                                s -= 65536, t.push(String.fromCharCode(s >>> 10 | 55296)), t.push(String.fromCharCode(1023 & s | 56320)), r += 4;
                                                continue
                                            }
                                        }
                                        t.push(String.fromCharCode(65533)), ++r
                                    } return t.join("")
                            }

                            function Ai(e, t, n) {
                                var r = void 0,
                                    i = void 0,
                                    o = void 0,
                                    a = void 0,
                                    s = void 0,
                                    u = function u() {
                                        var f = new Date - a;
                                        f < t && f >= 0 ? r = setTimeout(u, t - f) : (r = null, n || (s = e.apply(o, i), r || (o = i = null)))
                                    };
                                return function () {
                                    o = this, i = arguments, a = new Date;
                                    var f = n && !r;
                                    return r || (r = setTimeout(u, t)), f && (s = e.apply(o, i), o = i = null), s
                                }
                            }

                            function xi(e, t, n, r) {
                                var i = void 0,
                                    o = void 0,
                                    a = void 0,
                                    s = null,
                                    u = 0;
                                n || (n = {});
                                var f = function () {
                                    u = !1 === n.leading ? 0 : new Date - 0, s = null, a = e.apply(i, o), s || (i = o = null)
                                };
                                return t = t || 0,
                                    function () {
                                        var c = new Date;
                                        u || !1 !== n.leading || (u = c);
                                        var l = t - (c - u);
                                        return i = r || this, o = arguments, l <= 0 || l > t ? (s && (clearTimeout(s), s = null), u = c, a = e.apply(i, o), s || (i = o = null)) : s || !1 === n.trailing || (s = setTimeout(f, l)), a
                                    }
                            }
                            var Ri = _i && (window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame || window.oRequestAnimationFrame) || function (e) {
                                    return setTimeout(e, 17)
                                },
                                Mi = _i && (window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.webkitCancelRequestAnimationFrame || window.msCancelAnimationFrame || window.oCancelAnimationFrame) || function (e) {
                                    clearTimeout(e)
                                };

                            function Di(e, t) {
                                var n = t;
                                e = "" + (e || "");
                                var r = e.length;
                                t = (t || r) - r;
                                var i = t > 0 ? e.repeat ? "0".repeat(t) : new Array(t + 1).join("0") : "";
                                return (i + e).slice(0, n)
                            }

                            function Li(e) {
                                var t = Math.floor(e / 3600);
                                e = Math.floor(e % 3600);
                                var n = Di(Math.floor(e / 60), 2);
                                e = Math.floor(e % 60);
                                var r = Di(e, 2);
                                return t >= 1 ? t + ":" + n + ":" + r : n + ":" + r
                            }

                            function Bi(e) {
                                var t = document,
                                    n = t.querySelector("style");
                                if (!n) {
                                    n = t.createElement("style");
                                    var r = t.querySelector("head");
                                    r && r.appendChild(n)
                                }
                                return n.appendChild(t.createTextNode(e)), n
                            }

                            function Pi() {
                                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : new Date,
                                    t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "yyyy-MM-dd hh:mm:ss.i",
                                    n = e.getFullYear().toString(),
                                    r = {
                                        M: e.getMonth() + 1,
                                        d: e.getDate(),
                                        h: e.getHours(),
                                        m: e.getMinutes(),
                                        s: e.getSeconds(),
                                        i: e.getMilliseconds()
                                    };
                                t = t.replace(/(y+)/gi, (function (e, t) {
                                    return n.substr(4 - Math.min(4, t.length))
                                }));
                                var i = function (e) {
                                    t = t.replace(new RegExp("(" + e + "+)", "g"), (function (t, n) {
                                        return (r[e] < 10 && n.length > 1 ? "0" : "") + r[e]
                                    }))
                                };
                                for (var o in r) i(o);
                                return t
                            }

                            function Ci(e) {
                                try {
                                    return window.localStorage.getItem(e)
                                } catch (Ro) {
                                    try {
                                        var t = document.cookie.match(new RegExp("(^| )" + e + "=([^;]*)(;|$)"));
                                        return jn(t) ? unescape(t[2]) : ""
                                    } catch (Ro) {
                                        return ""
                                    }
                                }
                            }

                            function Ii(e, t) {
                                try {
                                    window.localStorage.setItem(e, t)
                                } catch (Ro) {
                                    var n = new Date;
                                    n.setTime(n.getTime() + 2592e7);
                                    try {
                                        document.cookie = e + "=" + escape(t) + ";expires=" + n.toUTCString() + ";path=/;"
                                    } catch (Ro) {
                                        console.error(Ro)
                                    }
                                }
                            }
                            var ji = i((function (e, t) {
                                    t.__esModule = !0, t.default = function (e, t) {
                                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                                    }
                                })),
                                Ni = r(ji);
                            D(D.S + D.F * !g, "Object", {
                                defineProperty: T.f
                            });
                            var Fi = d.Object,
                                Ui = function (e, t, n) {
                                    return Fi.defineProperty(e, t, n)
                                },
                                Vi = i((function (e) {
                                    e.exports = {
                                        default: Ui,
                                        __esModule: !0
                                    }
                                }));
                            r(Vi);
                            var zi = i((function (e, t) {
                                    t.__esModule = !0;
                                    var n = r(Vi);

                                    function r(e) {
                                        return e && e.__esModule ? e : {
                                            default: e
                                        }
                                    }
                                    t.default = function () {
                                        function e(e, t) {
                                            for (var r = 0; r < t.length; r++) {
                                                var i = t[r];
                                                i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), (0, n.default)(e, i.key, i)
                                            }
                                        }
                                        return function (t, n, r) {
                                            return n && e(t.prototype, n), r && e(t, r), t
                                        }
                                    }()
                                })),
                                Gi = r(zi),
                                Wi = Object.assign,
                                qi = !Wi || y((function () {
                                    var e = {},
                                        t = {},
                                        n = Symbol(),
                                        r = "abcdefghijklmnopqrst";
                                    return e[n] = 7, r.split("").forEach((function (e) {
                                        t[e] = e
                                    })), 7 != Wi({}, e)[n] || Object.keys(Wi({}, t)).join("") != r
                                })) ? function (e, t) {
                                    var n = be(e),
                                        r = arguments.length,
                                        i = 1,
                                        o = dt.f,
                                        a = pt.f;
                                    while (r > i) {
                                        var s, u = N(arguments[i++]),
                                            f = o ? ie(u).concat(o(u)) : ie(u),
                                            c = f.length,
                                            l = 0;
                                        while (c > l) a.call(u, s = f[l++]) && (n[s] = u[s])
                                    }
                                    return n
                                } : Wi;
                            D(D.S + D.F, "Object", {
                                assign: qi
                            });
                            var Hi = d.Object.assign,
                                Ki = i((function (e) {
                                    e.exports = {
                                        default: Hi,
                                        __esModule: !0
                                    }
                                })),
                                Yi = r(Ki);
                            D(D.S, "Object", {
                                create: de
                            });
                            var Ji = d.Object,
                                Xi = function (e, t) {
                                    return Ji.create(e, t)
                                },
                                $i = i((function (e) {
                                    e.exports = {
                                        default: Xi,
                                        __esModule: !0
                                    }
                                })),
                                Qi = r($i),
                                Zi = Qi(null);

                            function eo(e, t) {
                                var n = e.__evt_id;
                                n || (Object.defineProperty(e, "__evt_id", {
                                    writable: !0,
                                    enumerable: !1,
                                    configurable: !0
                                }), n = e.__evt_id = ++Zi.count);
                                var r = n + "_" + t,
                                    i = Zi[r];
                                return i || (i = Zi[r] = []), i
                            }

                            function to(e, t, n) {
                                var r = Qi(null);
                                r.type = t, r.target = e, n && Yi(r, Fn(n) ? n : {
                                    data: n
                                }), eo(e, t).forEach((function (t) {
                                    (t[1] || t[0]).apply(e, [r])
                                }))
                            }

                            function no(e, t, n) {
                                var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3],
                                    i = arguments[4];
                                Nn(r) && !i && (i = r, r = void 0);
                                var o = [n, void 0, r];
                                r && !i && (i = function () {
                                    ro(e, t, n, r);
                                    for (var i = arguments.length, o = Array(i), a = 0; a < i; a++) o[a] = arguments[a];
                                    n.apply(e, o)
                                }), i && (o[1] = i), eo(e, t).push(o)
                            }

                            function ro(e, t, n) {
                                var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3],
                                    i = eo(e, t);
                                if (n || r) {
                                    var o = -1,
                                        a = void 0;
                                    return i.find((function (e, t) {
                                        if ((!n || e[0] === n) && (!r || e[2])) return o = t, a = e[1], !0
                                    })), -1 !== o && i.splice(o, 1), a
                                }
                                i.length = 0
                            }
                            Zi.count = 0;
                            var io = function () {
                                    function e(t, n) {
                                        var r = this;
                                        if (Ni(this, e), Object.defineProperty(this, "__target", {
                                                writable: !0,
                                                enumerable: !1,
                                                configurable: !0
                                            }), this.__target = this, t) {
                                            if ("object" !== ("undefined" === typeof t ? "undefined" : ln(t))) throw new Error("CusEvent target are not object");
                                            this.__target = t, n && ["on", "once", "off", "emit"].forEach((function (e) {
                                                t[e] = r[e]
                                            }))
                                        }
                                    }
                                    return Gi(e, [{
                                        key: "on",
                                        value: function (e, t) {
                                            var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
                                            return no(this.__target, e, t, n), this
                                        }
                                    }, {
                                        key: "once",
                                        value: function (e, t) {
                                            return this.on(e, t, !0)
                                        }
                                    }, {
                                        key: "off",
                                        value: function (e, t) {
                                            var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
                                            return ro(this.__target, e, t, n), this
                                        }
                                    }, {
                                        key: "emit",
                                        value: function (e, t) {
                                            return to(this.__target, e, {
                                                data: t
                                            }), this
                                        }
                                    }]), e
                                }(),
                                oo = _i ? document.createElement("div") : {},
                                ao = "innerText";
                            "textContent" in oo && (ao = "textContent");
                            var so = Array.prototype;

                            function uo(e, t) {
                                return e.getAttribute(t)
                            }

                            function fo(e, t, n) {
                                void 0 === n ? e.removeAttribute(t) : e.setAttribute(t, n)
                            }

                            function co(e, t) {
                                if (t && (t = t.trim())) {
                                    var n = t.split(/\s+/);
                                    if (e.classList) n.forEach((function (t) {
                                        return e.classList.add(t)
                                    }));
                                    else {
                                        var r = " " + (e.className || "") + " ";
                                        n.forEach((function (e) {
                                            -1 === r.indexOf(" " + e + " ") && (r += " " + e)
                                        })), e.className = r.trim()
                                    }
                                }
                            }

                            function lo(e, t) {
                                if (t && (t = t.trim())) {
                                    var n = t.split(/\s+/);
                                    if (e.classList) n.forEach((function (t) {
                                        return e.classList.remove(t)
                                    }));
                                    else {
                                        var r = " " + e.className + " ";
                                        n.forEach((function (e) {
                                            var t = " " + e + " ";
                                            while (-1 !== r.indexOf(t)) r = r.replace(t, " ")
                                        })), e.className = r.trim()
                                    }
                                }
                            }

                            function ho(e, t) {
                                return new RegExp("(?:^|\\s)" + t + "(?=\\s|$)").test(e.className)
                            }
                            t.supportsPassive = !1;
                            try {
                                var po = Object.defineProperty({}, "passive", {
                                    get: function () {
                                        t.supportsPassive = !0
                                    }
                                });
                                _i && window.addEventListener("test", null, po)
                            } catch (Ro) {
                                console.error(Ro)
                            }

                            function vo(e, n, r) {
                                var i = arguments.length > 3 && void 0 !== arguments[3] && arguments[3],
                                    o = arguments.length > 4 && void 0 !== arguments[4] && arguments[4];
                                if (void 0 !== o && !Jn(o) && t.supportsPassive && (o = {
                                        passive: !0
                                    }), i) {
                                    var a = ro(e, n + "_once", r);
                                    a && (r = a)
                                }
                                e.removeEventListener(n, r, o)
                            }

                            function mo(e, n, r) {
                                var i = arguments.length > 3 && void 0 !== arguments[3] && arguments[3],
                                    o = arguments.length > 4 && void 0 !== arguments[4] && arguments[4];
                                if (void 0 !== o && !Jn(o) && t.supportsPassive && (o = {
                                        passive: !0
                                    }), i) {
                                    var a = r;
                                    r = function () {
                                        return function () {
                                            for (var t = arguments.length, s = Array(t), u = 0; u < t; u++) s[u] = arguments[u];
                                            a.apply(this, s), vo(e, n, r, i, o)
                                        }
                                    }(), no(e, n + "_once", a, r)
                                }
                                e.addEventListener(n, r, o)
                            }

                            function yo(e, n, r, i) {
                                var o = arguments.length > 4 && void 0 !== arguments[4] && arguments[4];
                                void 0 !== o && !Jn(o) && t.supportsPassive && (o = {
                                    passive: !0
                                });
                                var a = function (t) {
                                    var r = ko(t.target || t.srcElement, e, !0),
                                        o = wo(n, e, !0),
                                        a = void 0;
                                    o.find ? a = o.find((function (e) {
                                        return r.find((function (t) {
                                            return e === t
                                        }))
                                    })) : o.forEach((function (e) {
                                        return !a && r.forEach((function (t) {
                                            a || e !== t || (a = t)
                                        }))
                                    })), a && i.apply(a, arguments)
                                };
                                no(e, r + "_delegate_" + n, i, a), e.addEventListener(r, a, o)
                            }

                            function go(e, n, r, i) {
                                var o = arguments.length > 4 && void 0 !== arguments[4] && arguments[4];
                                void 0 !== o && !Jn(o) && t.supportsPassive && (o = {
                                    passive: !0
                                });
                                var a = ro(e, r + "_delegate_" + n, i);
                                a && e.removeEventListener(r, a, o)
                            }

                            function bo(e, t) {
                                return (e.currentStyle || document.defaultView.getComputedStyle(e, null))[t] || e.style[t]
                            }

                            function _o(e, t, n) {
                                if (Fn(t))
                                    for (var r in t) _o(e, r, t[r]);
                                else e.style[t] = n
                            }

                            function wo(e) {
                                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : document,
                                    n = arguments[2],
                                    r = t.querySelectorAll(e);
                                return n ? Ye(r) : r
                            }

                            function So(e) {
                                e.parentNode.removeChild(e)
                            }

                            function ko(e) {
                                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
                                    n = arguments[2],
                                    r = arguments[3],
                                    i = [];
                                n && i.push(e);
                                while (e && e.parentNode !== t) e = e.parentNode, e && i.push(e);
                                return r && i.push(t), i
                            }
                            var Eo = function () {
                                function e(t) {
                                    var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : document;
                                    Ni(this, e);
                                    var r = this;
                                    r.selector = t;
                                    var i = void 0;
                                    t && t.constructor === NodeList ? i = wi(t) : jn(t) ? i = t : Yn(t) ? 0 === t.indexOf("<") ? (oo.innerHTML = t, i = wo("*", oo, !0)) : i = wo(t, n, !0) : i = [t], Yi(r, i), r.length = i.length
                                }
                                return Gi(e, [{
                                    key: "each",
                                    value: function () {
                                        for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];
                                        return so.forEach.apply(this, t), this
                                    }
                                }, {
                                    key: "push",
                                    value: function () {
                                        for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];
                                        return so.push.apply(this, t), this
                                    }
                                }, {
                                    key: "splice",
                                    value: function () {
                                        for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];
                                        return Oo(so.splice.apply(this, t))
                                    }
                                }, {
                                    key: "find",
                                    value: function (e) {
                                        var t = [];
                                        this.each((function (n) {
                                            t = t.concat(wo(e, n, !0))
                                        }));
                                        var n = Oo(t);
                                        return n.parent = this, n.selector = e, n
                                    }
                                }, {
                                    key: "append",
                                    value: function (e) {
                                        var t = Oo(e),
                                            n = this[0];
                                        return t.each((function (e) {
                                            return n.appendChild(e)
                                        })), this
                                    }
                                }, {
                                    key: "appendTo",
                                    value: function (e) {
                                        return Oo(e).append(this), this
                                    }
                                }, {
                                    key: "text",
                                    value: function (e) {
                                        return 0 === arguments.length ? this[0][ao] : this.each((function (t) {
                                            t[ao] = e
                                        }))
                                    }
                                }, {
                                    key: "html",
                                    value: function (e) {
                                        return 0 === arguments.length ? this[0].innerHTML : this.each((function (t) {
                                            t.innerHTML = e
                                        }))
                                    }
                                }, {
                                    key: "attr",
                                    value: function (e, t) {
                                        return 1 === arguments.length ? uo(this[0], e) : this.each((function (n) {
                                            return fo(n, e, t)
                                        }))
                                    }
                                }, {
                                    key: "data",
                                    value: function (e, t) {
                                        return 0 === arguments.length ? this[0].dataset || {} : 1 === arguments.length ? (this[0].dataset || {})[e] : this.each((function (n) {
                                            (n.dataset || (n.dataset = {}))[e] = t
                                        }))
                                    }
                                }, {
                                    key: "css",
                                    value: function (e, t) {
                                        return 1 !== arguments.length || Fn(e) ? this.each((function (n) {
                                            return _o(n, e, t)
                                        })) : bo(this[0], e)
                                    }
                                }, {
                                    key: "addClass",
                                    value: function (e) {
                                        return this.each((function (t) {
                                            return co(t, e)
                                        }))
                                    }
                                }, {
                                    key: "removeClass",
                                    value: function (e) {
                                        return this.each((function (t) {
                                            return lo(t, e)
                                        }))
                                    }
                                }, {
                                    key: "hasClass",
                                    value: function (e) {
                                        return ho(this[0], e)
                                    }
                                }, {
                                    key: "on",
                                    value: function (e, t) {
                                        var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
                                            r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
                                        return this.each((function (i) {
                                            return mo(i, e, t, n, r)
                                        }))
                                    }
                                }, {
                                    key: "off",
                                    value: function (e, t) {
                                        var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
                                            r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
                                        return this.each((function (i) {
                                            return vo(i, e, t, n, r)
                                        }))
                                    }
                                }, {
                                    key: "delegate",
                                    value: function (e, t, n) {
                                        var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
                                        return this.each((function (i) {
                                            return yo(i, e, t, n, r)
                                        }))
                                    }
                                }, {
                                    key: "undelegate",
                                    value: function (e, t, n) {
                                        var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
                                        return this.each((function (i) {
                                            return go(i, e, t, n, r)
                                        }))
                                    }
                                }, {
                                    key: "remove",
                                    value: function () {
                                        return this.each((function (e) {
                                            return So(e)
                                        }))
                                    }
                                }]), e
                            }();

                            function Oo(e, t) {
                                return e.constructor === Eo ? e : new Eo(e, t)
                            }

                            function To(e, t) {
                                if (!Yn(e)) throw new TypeError("Log's method only acccept string as argument, but not " + e + " in " + ("undefined" === typeof e ? "undefined" : ln(e)));
                                return Yn(t) ? (e = Ao.FORCE_GLOBAL_TAG ? Ao.GLOBAL_TAG : e || Ao.GLOBAL_TAG, "[" + e + "] > " + t) : "[" + Ao.GLOBAL_TAG + "] > " + e
                            }
                            var Ao = function () {
                                function e() {
                                    Ni(this, e)
                                }
                                return Gi(e, null, [{
                                    key: "error",
                                    value: function (t, n) {
                                        e.ENABLE_ERROR && (console.error || console.warn || console.log).call(console, To(t, n))
                                    }
                                }, {
                                    key: "info",
                                    value: function (t, n) {
                                        e.ENABLE_INFO && (console.info || console.log).call(console, To(t, n))
                                    }
                                }, {
                                    key: "warn",
                                    value: function (t, n) {
                                        e.ENABLE_WARN && (console.warn || console.log).call(console, To(t, n))
                                    }
                                }, {
                                    key: "debug",
                                    value: function (t, n) {
                                        e.ENABLE_DEBUG && (console.debug || console.log).call(console, To(t, n))
                                    }
                                }, {
                                    key: "verbose",
                                    value: function (t, n) {
                                        e.ENABLE_VERBOSE && console.log(To(t, n))
                                    }
                                }]), e
                            }();
                            Ao.GLOBAL_TAG = "chimee", Ao.FORCE_GLOBAL_TAG = !1, Ao.ENABLE_ERROR = !0, Ao.ENABLE_INFO = !0, Ao.ENABLE_WARN = !0, Ao.ENABLE_DEBUG = !0, Ao.ENABLE_VERBOSE = !0;
                            var xo = i((function (e, t) {
                                (function (n, r) {
                                    var i = "0.7.17",
                                        o = "",
                                        a = "?",
                                        s = "function",
                                        u = "undefined",
                                        f = "object",
                                        c = "string",
                                        l = "major",
                                        d = "model",
                                        h = "name",
                                        p = "type",
                                        v = "vendor",
                                        m = "version",
                                        y = "architecture",
                                        g = "console",
                                        b = "mobile",
                                        _ = "tablet",
                                        w = "smarttv",
                                        S = "wearable",
                                        k = "embedded",
                                        E = {
                                            extend: function (e, t) {
                                                var n = {};
                                                for (var r in e) t[r] && t[r].length % 2 === 0 ? n[r] = t[r].concat(e[r]) : n[r] = e[r];
                                                return n
                                            },
                                            has: function (e, t) {
                                                return "string" === typeof e && -1 !== t.toLowerCase().indexOf(e.toLowerCase())
                                            },
                                            lowerize: function (e) {
                                                return e.toLowerCase()
                                            },
                                            major: function (e) {
                                                return typeof e === c ? e.replace(/[^\d\.]/g, "").split(".")[0] : r
                                            },
                                            trim: function (e) {
                                                return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "")
                                            }
                                        },
                                        O = {
                                            rgx: function (e, t) {
                                                var n, i, o, a, u, c, l = 0;
                                                while (l < t.length && !u) {
                                                    var d = t[l],
                                                        h = t[l + 1];
                                                    n = i = 0;
                                                    while (n < d.length && !u)
                                                        if (u = d[n++].exec(e), u)
                                                            for (o = 0; o < h.length; o++) c = u[++i], a = h[o], typeof a === f && a.length > 0 ? 2 == a.length ? typeof a[1] == s ? this[a[0]] = a[1].call(this, c) : this[a[0]] = a[1] : 3 == a.length ? typeof a[1] !== s || a[1].exec && a[1].test ? this[a[0]] = c ? c.replace(a[1], a[2]) : r : this[a[0]] = c ? a[1].call(this, c, a[2]) : r : 4 == a.length && (this[a[0]] = c ? a[3].call(this, c.replace(a[1], a[2])) : r) : this[a] = c || r;
                                                    l += 2
                                                }
                                            },
                                            str: function (e, t) {
                                                for (var n in t)
                                                    if (typeof t[n] === f && t[n].length > 0) {
                                                        for (var i = 0; i < t[n].length; i++)
                                                            if (E.has(t[n][i], e)) return n === a ? r : n
                                                    } else if (E.has(t[n], e)) return n === a ? r : n;
                                                return e
                                            }
                                        },
                                        T = {
                                            browser: {
                                                oldsafari: {
                                                    version: {
                                                        "1.0": "/8",
                                                        1.2: "/1",
                                                        1.3: "/3",
                                                        "2.0": "/412",
                                                        "2.0.2": "/416",
                                                        "2.0.3": "/417",
                                                        "2.0.4": "/419",
                                                        "?": "/"
                                                    }
                                                }
                                            },
                                            device: {
                                                amazon: {
                                                    model: {
                                                        "Fire Phone": ["SD", "KF"]
                                                    }
                                                },
                                                sprint: {
                                                    model: {
                                                        "Evo Shift 4G": "7373KT"
                                                    },
                                                    vendor: {
                                                        HTC: "APA",
                                                        Sprint: "Sprint"
                                                    }
                                                }
                                            },
                                            os: {
                                                windows: {
                                                    version: {
                                                        ME: "4.90",
                                                        "NT 3.11": "NT3.51",
                                                        "NT 4.0": "NT4.0",
                                                        2e3: "NT 5.0",
                                                        XP: ["NT 5.1", "NT 5.2"],
                                                        Vista: "NT 6.0",
                                                        7: "NT 6.1",
                                                        8: "NT 6.2",
                                                        8.1: "NT 6.3",
                                                        10: ["NT 6.4", "NT 10.0"],
                                                        RT: "ARM"
                                                    }
                                                }
                                            }
                                        },
                                        A = {
                                            browser: [
                                                [/(opera\smini)\/([\w\.-]+)/i, /(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, /(opera).+version\/([\w\.]+)/i, /(opera)[\/\s]+([\w\.]+)/i],
                                                [h, m],
                                                [/(opios)[\/\s]+([\w\.]+)/i],
                                                [
                                                    [h, "Opera Mini"], m
                                                ],
                                                [/\s(opr)\/([\w\.]+)/i],
                                                [
                                                    [h, "Opera"], m
                                                ],
                                                [/(kindle)\/([\w\.]+)/i, /(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]+)*/i, /(avant\s|iemobile|slim|baidu)(?:browser)?[\/\s]?([\w\.]*)/i, /(?:ms|\()(ie)\s([\w\.]+)/i, /(rekonq)\/([\w\.]+)*/i, /(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser)\/([\w\.-]+)/i],
                                                [h, m],
                                                [/(trident).+rv[:\s]([\w\.]+).+like\sgecko/i],
                                                [
                                                    [h, "IE"], m
                                                ],
                                                [/(edge)\/((\d+)?[\w\.]+)/i],
                                                [h, m],
                                                [/(yabrowser)\/([\w\.]+)/i],
                                                [
                                                    [h, "Yandex"], m
                                                ],
                                                [/(puffin)\/([\w\.]+)/i],
                                                [
                                                    [h, "Puffin"], m
                                                ],
                                                [/((?:[\s\/])uc?\s?browser|(?:juc.+)ucweb)[\/\s]?([\w\.]+)/i],
                                                [
                                                    [h, "UCBrowser"], m
                                                ],
                                                [/(comodo_dragon)\/([\w\.]+)/i],
                                                [
                                                    [h, /_/g, " "], m
                                                ],
                                                [/(micromessenger)\/([\w\.]+)/i],
                                                [
                                                    [h, "WeChat"], m
                                                ],
                                                [/(QQ)\/([\d\.]+)/i],
                                                [h, m],
                                                [/m?(qqbrowser)[\/\s]?([\w\.]+)/i],
                                                [h, m],
                                                [/xiaomi\/miuibrowser\/([\w\.]+)/i],
                                                [m, [h, "MIUI Browser"]],
                                                [/;fbav\/([\w\.]+);/i],
                                                [m, [h, "Facebook"]],
                                                [/headlesschrome(?:\/([\w\.]+)|\s)/i],
                                                [m, [h, "Chrome Headless"]],
                                                [/\swv\).+(chrome)\/([\w\.]+)/i],
                                                [
                                                    [h, /(.+)/, "$1 WebView"], m
                                                ],
                                                [/((?:oculus|samsung)browser)\/([\w\.]+)/i],
                                                [
                                                    [h, /(.+(?:g|us))(.+)/, "$1 $2"], m
                                                ],
                                                [/android.+version\/([\w\.]+)\s+(?:mobile\s?safari|safari)*/i],
                                                [m, [h, "Android Browser"]],
                                                [/(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i],
                                                [h, m],
                                                [/(dolfin)\/([\w\.]+)/i],
                                                [
                                                    [h, "Dolphin"], m
                                                ],
                                                [/((?:android.+)crmo|crios)\/([\w\.]+)/i],
                                                [
                                                    [h, "Chrome"], m
                                                ],
                                                [/(coast)\/([\w\.]+)/i],
                                                [
                                                    [h, "Opera Coast"], m
                                                ],
                                                [/fxios\/([\w\.-]+)/i],
                                                [m, [h, "Firefox"]],
                                                [/version\/([\w\.]+).+?mobile\/\w+\s(safari)/i],
                                                [m, [h, "Mobile Safari"]],
                                                [/version\/([\w\.]+).+?(mobile\s?safari|safari)/i],
                                                [m, h],
                                                [/webkit.+?(gsa)\/([\w\.]+).+?(mobile\s?safari|safari)(\/[\w\.]+)/i],
                                                [
                                                    [h, "GSA"], m
                                                ],
                                                [/webkit.+?(mobile\s?safari|safari)(\/[\w\.]+)/i],
                                                [h, [m, O.str, T.browser.oldsafari.version]],
                                                [/(konqueror)\/([\w\.]+)/i, /(webkit|khtml)\/([\w\.]+)/i],
                                                [h, m],
                                                [/(navigator|netscape)\/([\w\.-]+)/i],
                                                [
                                                    [h, "Netscape"], m
                                                ],
                                                [/(swiftfox)/i, /(icedragon|iceweasel|camino|chimera|fennec|maemo\sbrowser|minimo|conkeror)[\/\s]?([\w\.\+]+)/i, /(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix)\/([\w\.-]+)/i, /(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i, /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir)[\/\s]?([\w\.]+)/i, /(links)\s\(([\w\.]+)/i, /(gobrowser)\/?([\w\.]+)*/i, /(ice\s?browser)\/v?([\w\._]+)/i, /(mosaic)[\/\s]([\w\.]+)/i],
                                                [h, m]
                                            ],
                                            cpu: [
                                                [/(?:(amd|x(?:(?:86|64)[_-])?|wow|win)64)[;\)]/i],
                                                [
                                                    [y, "amd64"]
                                                ],
                                                [/(ia32(?=;))/i],
                                                [
                                                    [y, E.lowerize]
                                                ],
                                                [/((?:i[346]|x)86)[;\)]/i],
                                                [
                                                    [y, "ia32"]
                                                ],
                                                [/windows\s(ce|mobile);\sppc;/i],
                                                [
                                                    [y, "arm"]
                                                ],
                                                [/((?:ppc|powerpc)(?:64)?)(?:\smac|;|\))/i],
                                                [
                                                    [y, /ower/, "", E.lowerize]
                                                ],
                                                [/(sun4\w)[;\)]/i],
                                                [
                                                    [y, "sparc"]
                                                ],
                                                [/((?:avr32|ia64(?=;))|68k(?=\))|arm(?:64|(?=v\d+;))|(?=atmel\s)avr|(?:irix|mips|sparc)(?:64)?(?=;)|pa-risc)/i],
                                                [
                                                    [y, E.lowerize]
                                                ]
                                            ],
                                            device: [
                                                [/\((ipad|playbook);[\w\s\);-]+(rim|apple)/i],
                                                [d, v, [p, _]],
                                                [/applecoremedia\/[\w\.]+ \((ipad)/],
                                                [d, [v, "Apple"],
                                                    [p, _]
                                                ],
                                                [/(apple\s{0,1}tv)/i],
                                                [
                                                    [d, "Apple TV"],
                                                    [v, "Apple"]
                                                ],
                                                [/(archos)\s(gamepad2?)/i, /(hp).+(touchpad)/i, /(hp).+(tablet)/i, /(kindle)\/([\w\.]+)/i, /\s(nook)[\w\s]+build\/(\w+)/i, /(dell)\s(strea[kpr\s\d]*[\dko])/i],
                                                [v, d, [p, _]],
                                                [/(kf[A-z]+)\sbuild\/[\w\.]+.*silk\//i],
                                                [d, [v, "Amazon"],
                                                    [p, _]
                                                ],
                                                [/(sd|kf)[0349hijorstuw]+\sbuild\/[\w\.]+.*silk\//i],
                                                [
                                                    [d, O.str, T.device.amazon.model],
                                                    [v, "Amazon"],
                                                    [p, b]
                                                ],
                                                [/\((ip[honed|\s\w*]+);.+(apple)/i],
                                                [d, v, [p, b]],
                                                [/\((ip[honed|\s\w*]+);/i],
                                                [d, [v, "Apple"],
                                                    [p, b]
                                                ],
                                                [/(blackberry)[\s-]?(\w+)/i, /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[\s_-]?([\w-]+)*/i, /(hp)\s([\w\s]+\w)/i, /(asus)-?(\w+)/i],
                                                [v, d, [p, b]],
                                                [/\(bb10;\s(\w+)/i],
                                                [d, [v, "BlackBerry"],
                                                    [p, b]
                                                ],
                                                [/android.+(transfo[prime\s]{4,10}\s\w+|eeepc|slider\s\w+|nexus 7|padfone)/i],
                                                [d, [v, "Asus"],
                                                    [p, _]
                                                ],
                                                [/(sony)\s(tablet\s[ps])\sbuild\//i, /(sony)?(?:sgp.+)\sbuild\//i],
                                                [
                                                    [v, "Sony"],
                                                    [d, "Xperia Tablet"],
                                                    [p, _]
                                                ],
                                                [/android.+\s([c-g]\d{4}|so[-l]\w+)\sbuild\//i],
                                                [d, [v, "Sony"],
                                                    [p, b]
                                                ],
                                                [/\s(ouya)\s/i, /(nintendo)\s([wids3u]+)/i],
                                                [v, d, [p, g]],
                                                [/android.+;\s(shield)\sbuild/i],
                                                [d, [v, "Nvidia"],
                                                    [p, g]
                                                ],
                                                [/(playstation\s[34portablevi]+)/i],
                                                [d, [v, "Sony"],
                                                    [p, g]
                                                ],
                                                [/(sprint\s(\w+))/i],
                                                [
                                                    [v, O.str, T.device.sprint.vendor],
                                                    [d, O.str, T.device.sprint.model],
                                                    [p, b]
                                                ],
                                                [/(lenovo)\s?(S(?:5000|6000)+(?:[-][\w+]))/i],
                                                [v, d, [p, _]],
                                                [/(htc)[;_\s-]+([\w\s]+(?=\))|\w+)*/i, /(zte)-(\w+)*/i, /(alcatel|geeksphone|lenovo|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]+)*/i],
                                                [v, [d, /_/g, " "],
                                                    [p, b]
                                                ],
                                                [/(nexus\s9)/i],
                                                [d, [v, "HTC"],
                                                    [p, _]
                                                ],
                                                [/d\/huawei([\w\s-]+)[;\)]/i, /(nexus\s6p)/i],
                                                [d, [v, "Huawei"],
                                                    [p, b]
                                                ],
                                                [/(microsoft);\s(lumia[\s\w]+)/i],
                                                [v, d, [p, b]],
                                                [/[\s\(;](xbox(?:\sone)?)[\s\);]/i],
                                                [d, [v, "Microsoft"],
                                                    [p, g]
                                                ],
                                                [/(kin\.[onetw]{3})/i],
                                                [
                                                    [d, /\./g, " "],
                                                    [v, "Microsoft"],
                                                    [p, b]
                                                ],
                                                [/\s(milestone|droid(?:[2-4x]|\s(?:bionic|x2|pro|razr))?(:?\s4g)?)[\w\s]+build\//i, /mot[\s-]?(\w+)*/i, /(XT\d{3,4}) build\//i, /(nexus\s6)/i],
                                                [d, [v, "Motorola"],
                                                    [p, b]
                                                ],
                                                [/android.+\s(mz60\d|xoom[\s2]{0,2})\sbuild\//i],
                                                [d, [v, "Motorola"],
                                                    [p, _]
                                                ],
                                                [/hbbtv\/\d+\.\d+\.\d+\s+\([\w\s]*;\s*(\w[^;]*);([^;]*)/i],
                                                [
                                                    [v, E.trim],
                                                    [d, E.trim],
                                                    [p, w]
                                                ],
                                                [/hbbtv.+maple;(\d+)/i],
                                                [
                                                    [d, /^/, "SmartTV"],
                                                    [v, "Samsung"],
                                                    [p, w]
                                                ],
                                                [/\(dtv[\);].+(aquos)/i],
                                                [d, [v, "Sharp"],
                                                    [p, w]
                                                ],
                                                [/android.+((sch-i[89]0\d|shw-m380s|gt-p\d{4}|gt-n\d+|sgh-t8[56]9|nexus 10))/i, /((SM-T\w+))/i],
                                                [
                                                    [v, "Samsung"], d, [p, _]
                                                ],
                                                [/smart-tv.+(samsung)/i],
                                                [v, [p, w], d],
                                                [/((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-\w[\w\d]+))/i, /(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i, /sec-((sgh\w+))/i],
                                                [
                                                    [v, "Samsung"], d, [p, b]
                                                ],
                                                [/sie-(\w+)*/i],
                                                [d, [v, "Siemens"],
                                                    [p, b]
                                                ],
                                                [/(maemo|nokia).*(n900|lumia\s\d+)/i, /(nokia)[\s_-]?([\w-]+)*/i],
                                                [
                                                    [v, "Nokia"], d, [p, b]
                                                ],
                                                [/android\s3\.[\s\w;-]{10}(a\d{3})/i],
                                                [d, [v, "Acer"],
                                                    [p, _]
                                                ],
                                                [/android.+([vl]k\-?\d{3})\s+build/i],
                                                [d, [v, "LG"],
                                                    [p, _]
                                                ],
                                                [/android\s3\.[\s\w;-]{10}(lg?)-([06cv9]{3,4})/i],
                                                [
                                                    [v, "LG"], d, [p, _]
                                                ],
                                                [/(lg) netcast\.tv/i],
                                                [v, d, [p, w]],
                                                [/(nexus\s[45])/i, /lg[e;\s\/-]+(\w+)*/i, /android.+lg(\-?[\d\w]+)\s+build/i],
                                                [d, [v, "LG"],
                                                    [p, b]
                                                ],
                                                [/android.+(ideatab[a-z0-9\-\s]+)/i],
                                                [d, [v, "Lenovo"],
                                                    [p, _]
                                                ],
                                                [/linux;.+((jolla));/i],
                                                [v, d, [p, b]],
                                                [/((pebble))app\/[\d\.]+\s/i],
                                                [v, d, [p, S]],
                                                [/android.+;\s(oppo)\s?([\w\s]+)\sbuild/i],
                                                [v, d, [p, b]],
                                                [/crkey/i],
                                                [
                                                    [d, "Chromecast"],
                                                    [v, "Google"]
                                                ],
                                                [/android.+;\s(glass)\s\d/i],
                                                [d, [v, "Google"],
                                                    [p, S]
                                                ],
                                                [/android.+;\s(pixel c)\s/i],
                                                [d, [v, "Google"],
                                                    [p, _]
                                                ],
                                                [/android.+;\s(pixel xl|pixel)\s/i],
                                                [d, [v, "Google"],
                                                    [p, b]
                                                ],
                                                [/android.+(\w+)\s+build\/hm\1/i, /android.+(hm[\s\-_]*note?[\s_]*(?:\d\w)?)\s+build/i, /android.+(mi[\s\-_]*(?:one|one[\s_]plus|note lte)?[\s_]*(?:\d\w)?)\s+build/i, /android.+(redmi[\s\-_]*(?:note)?(?:[\s_]*[\w\s]+)?)\s+build/i],
                                                [
                                                    [d, /_/g, " "],
                                                    [v, "Xiaomi"],
                                                    [p, b]
                                                ],
                                                [/android.+(mi[\s\-_]*(?:pad)?(?:[\s_]*[\w\s]+)?)\s+build/i],
                                                [
                                                    [d, /_/g, " "],
                                                    [v, "Xiaomi"],
                                                    [p, _]
                                                ],
                                                [/android.+;\s(m[1-5]\snote)\sbuild/i],
                                                [d, [v, "Meizu"],
                                                    [p, _]
                                                ],
                                                [/android.+a000(1)\s+build/i],
                                                [d, [v, "OnePlus"],
                                                    [p, b]
                                                ],
                                                [/android.+[;\/]\s*(RCT[\d\w]+)\s+build/i],
                                                [d, [v, "RCA"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*(Venue[\d\s]*)\s+build/i],
                                                [d, [v, "Dell"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*(Q[T|M][\d\w]+)\s+build/i],
                                                [d, [v, "Verizon"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s+(Barnes[&\s]+Noble\s+|BN[RT])(V?.*)\s+build/i],
                                                [
                                                    [v, "Barnes & Noble"], d, [p, _]
                                                ],
                                                [/android.+[;\/]\s+(TM\d{3}.*\b)\s+build/i],
                                                [d, [v, "NuVision"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*(zte)?.+(k\d{2})\s+build/i],
                                                [
                                                    [v, "ZTE"], d, [p, _]
                                                ],
                                                [/android.+[;\/]\s*(gen\d{3})\s+build.*49h/i],
                                                [d, [v, "Swiss"],
                                                    [p, b]
                                                ],
                                                [/android.+[;\/]\s*(zur\d{3})\s+build/i],
                                                [d, [v, "Swiss"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*((Zeki)?TB.*\b)\s+build/i],
                                                [d, [v, "Zeki"],
                                                    [p, _]
                                                ],
                                                [/(android).+[;\/]\s+([YR]\d{2}x?.*)\s+build/i, /android.+[;\/]\s+(Dragon[\-\s]+Touch\s+|DT)(.+)\s+build/i],
                                                [
                                                    [v, "Dragon Touch"], d, [p, _]
                                                ],
                                                [/android.+[;\/]\s*(NS-?.+)\s+build/i],
                                                [d, [v, "Insignia"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*((NX|Next)-?.+)\s+build/i],
                                                [d, [v, "NextBook"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*(Xtreme\_?)?(V(1[045]|2[015]|30|40|60|7[05]|90))\s+build/i],
                                                [
                                                    [v, "Voice"], d, [p, b]
                                                ],
                                                [/android.+[;\/]\s*(LVTEL\-?)?(V1[12])\s+build/i],
                                                [
                                                    [v, "LvTel"], d, [p, b]
                                                ],
                                                [/android.+[;\/]\s*(V(100MD|700NA|7011|917G).*\b)\s+build/i],
                                                [d, [v, "Envizen"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*(Le[\s\-]+Pan)[\s\-]+(.*\b)\s+build/i],
                                                [v, d, [p, _]],
                                                [/android.+[;\/]\s*(Trio[\s\-]*.*)\s+build/i],
                                                [d, [v, "MachSpeed"],
                                                    [p, _]
                                                ],
                                                [/android.+[;\/]\s*(Trinity)[\-\s]*(T\d{3})\s+build/i],
                                                [v, d, [p, _]],
                                                [/android.+[;\/]\s*TU_(1491)\s+build/i],
                                                [d, [v, "Rotor"],
                                                    [p, _]
                                                ],
                                                [/android.+(KS(.+))\s+build/i],
                                                [d, [v, "Amazon"],
                                                    [p, _]
                                                ],
                                                [/android.+(Gigaset)[\s\-]+(Q.+)\s+build/i],
                                                [v, d, [p, _]],
                                                [/\s(tablet|tab)[;\/]/i, /\s(mobile)(?:[;\/]|\ssafari)/i],
                                                [
                                                    [p, E.lowerize], v, d
                                                ],
                                                [/(android.+)[;\/].+build/i],
                                                [d, [v, "Generic"]]
                                            ],
                                            engine: [
                                                [/windows.+\sedge\/([\w\.]+)/i],
                                                [m, [h, "EdgeHTML"]],
                                                [/(presto)\/([\w\.]+)/i, /(webkit|trident|netfront|netsurf|amaya|lynx|w3m)\/([\w\.]+)/i, /(khtml|tasman|links)[\/\s]\(?([\w\.]+)/i, /(icab)[\/\s]([23]\.[\d\.]+)/i],
                                                [h, m],
                                                [/rv\:([\w\.]+).*(gecko)/i],
                                                [m, h]
                                            ],
                                            os: [
                                                [/microsoft\s(windows)\s(vista|xp)/i],
                                                [h, m],
                                                [/(windows)\snt\s6\.2;\s(arm)/i, /(windows\sphone(?:\sos)*)[\s\/]?([\d\.\s]+\w)*/i, /(windows\smobile|windows)[\s\/]?([ntce\d\.\s]+\w)/i],
                                                [h, [m, O.str, T.os.windows.version]],
                                                [/(win(?=3|9|n)|win\s9x\s)([nt\d\.]+)/i],
                                                [
                                                    [h, "Windows"],
                                                    [m, O.str, T.os.windows.version]
                                                ],
                                                [/\((bb)(10);/i],
                                                [
                                                    [h, "BlackBerry"], m
                                                ],
                                                [/(blackberry)\w*\/?([\w\.]+)*/i, /(tizen)[\/\s]([\w\.]+)/i, /(android|webos|palm\sos|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]+)*/i, /linux;.+(sailfish);/i],
                                                [h, m],
                                                [/(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]+)*/i],
                                                [
                                                    [h, "Symbian"], m
                                                ],
                                                [/\((series40);/i],
                                                [h],
                                                [/mozilla.+\(mobile;.+gecko.+firefox/i],
                                                [
                                                    [h, "Firefox OS"], m
                                                ],
                                                [/(nintendo|playstation)\s([wids34portablevu]+)/i, /(mint)[\/\s\(]?(\w+)*/i, /(mageia|vectorlinux)[;\s]/i, /(joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|(?=\s)arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?(?!chrom)([\w\.-]+)*/i, /(hurd|linux)\s?([\w\.]+)*/i, /(gnu)\s?([\w\.]+)*/i],
                                                [h, m],
                                                [/(cros)\s[\w]+\s([\w\.]+\w)/i],
                                                [
                                                    [h, "Chromium OS"], m
                                                ],
                                                [/(sunos)\s?([\w\.]+\d)*/i],
                                                [
                                                    [h, "Solaris"], m
                                                ],
                                                [/\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]+)*/i],
                                                [h, m],
                                                [/(haiku)\s(\w+)/i],
                                                [h, m],
                                                [/cfnetwork\/.+darwin/i, /ip[honead]+(?:.*os\s([\w]+)\slike\smac|;\sopera)/i],
                                                [
                                                    [m, /_/g, "."],
                                                    [h, "iOS"]
                                                ],
                                                [/(mac\sos\sx)\s?([\w\s\.]+\w)*/i, /(macintosh|mac(?=_powerpc)\s)/i],
                                                [
                                                    [h, "Mac OS"],
                                                    [m, /_/g, "."]
                                                ],
                                                [/((?:open)?solaris)[\/\s-]?([\w\.]+)*/i, /(aix)\s((\d)(?=\.|\)|\s)[\w\.]*)*/i, /(plan\s9|minix|beos|os\/2|amigaos|morphos|risc\sos|openvms)/i, /(unix)\s?([\w\.]+)*/i],
                                                [h, m]
                                            ]
                                        },
                                        x = function (e, t) {
                                            if ("object" === typeof e && (t = e, e = r), !(this instanceof x)) return new x(e, t).getResult();
                                            var i = e || (n && n.navigator && n.navigator.userAgent ? n.navigator.userAgent : o),
                                                a = t ? E.extend(A, t) : A;
                                            return this.getBrowser = function () {
                                                var e = {
                                                    name: r,
                                                    version: r
                                                };
                                                return O.rgx.call(e, i, a.browser), e.major = E.major(e.version), e
                                            }, this.getCPU = function () {
                                                var e = {
                                                    architecture: r
                                                };
                                                return O.rgx.call(e, i, a.cpu), e
                                            }, this.getDevice = function () {
                                                var e = {
                                                    vendor: r,
                                                    model: r,
                                                    type: r
                                                };
                                                return O.rgx.call(e, i, a.device), e
                                            }, this.getEngine = function () {
                                                var e = {
                                                    name: r,
                                                    version: r
                                                };
                                                return O.rgx.call(e, i, a.engine), e
                                            }, this.getOS = function () {
                                                var e = {
                                                    name: r,
                                                    version: r
                                                };
                                                return O.rgx.call(e, i, a.os), e
                                            }, this.getResult = function () {
                                                return {
                                                    ua: this.getUA(),
                                                    browser: this.getBrowser(),
                                                    engine: this.getEngine(),
                                                    os: this.getOS(),
                                                    device: this.getDevice(),
                                                    cpu: this.getCPU()
                                                }
                                            }, this.getUA = function () {
                                                return i
                                            }, this.setUA = function (e) {
                                                return i = e, this
                                            }, this
                                        };
                                    x.VERSION = i, x.BROWSER = {
                                        NAME: h,
                                        MAJOR: l,
                                        VERSION: m
                                    }, x.CPU = {
                                        ARCHITECTURE: y
                                    }, x.DEVICE = {
                                        MODEL: d,
                                        VENDOR: v,
                                        TYPE: p,
                                        CONSOLE: g,
                                        MOBILE: b,
                                        SMARTTV: w,
                                        TABLET: _,
                                        WEARABLE: S,
                                        EMBEDDED: k
                                    }, x.ENGINE = {
                                        NAME: h,
                                        VERSION: m
                                    }, x.OS = {
                                        NAME: h,
                                        VERSION: m
                                    }, "object" !== u ? ("object" !== u && e.exports && (t = e.exports = x), t.UAParser = x) : typeof r === s && r.amd ? r((function () {
                                        return x
                                    })) : n && (n.UAParser = x);
                                    var R = n && (n.jQuery || n.Zepto);
                                    if (typeof R !== u) {
                                        var M = new x;
                                        R.ua = M.getResult(), R.ua.get = function () {
                                            return M.getUA()
                                        }, R.ua.set = function (e) {
                                            M.setUA(e);
                                            var t = M.getResult();
                                            for (var n in t) R.ua[n] = t[n]
                                        }
                                    }
                                })("object" === typeof window ? window : n)
                            }));
                            xo.UAParser;
                            t.Log = Ao, t.UAParser = xo, t.genTraversalHandler = ar, t.deepClone = ur, t.deepAssign = fr, t.camelize = cr, t.hypenate = lr, t.bind = dr, t.uuid = hr, t.S4 = pr, t.rand = vr, t.getDeepProperty = mr, t.defined = Cn, t.isVoid = In, t.isArray = jn, t.isFunction = Nn, t.isObject = Fn, t.isNumber = Un, t.isNumeric = Vn, t.isInteger = zn, t.isEmpty = Gn, t.isEvent = Wn, t.isBlob = qn, t.isFile = Hn, t.isDate = Kn, t.isString = Yn, t.isBoolean = Jn, t.isPromise = Xn, t.isPrimitive = $n, t.isUrl = Qn, t.isNode = Zn, t.isElement = er, t.isChildNode = tr, t.isPosterityNode = nr, t.isHTMLString = rr, t.isError = ir, t.isRegExp = or, t.inBrowser = _i, t.makeArray = wi, t.transObjectAttrIntoArray = Si, t.runRejectableQueue = ki, t.runStoppableQueue = Ei, t.decodeUTF8 = Ti, t.debounce = Ai, t.throttle = xi, t.raf = Ri, t.caf = Mi, t.strRepeat = Di, t.formatTime = Li, t.appendCSS = Bi, t.formatDate = Pi, t.getLocalStorage = Ci, t.setLocalStorage = Ii, t.emitEventCache = to, t.addEventCache = no, t.removeEventCache = ro, t.CustEvent = io, t.getAttr = uo, t.setAttr = fo, t.addClassName = co, t.removeClassName = lo, t.hasClassName = ho, t.removeEvent = vo, t.addEvent = mo, t.addDelegate = yo, t.removeDelegate = go, t.getStyle = bo, t.setStyle = _o, t.query = wo, t.removeEl = So, t.findParents = ko, t.NodeWrap = Eo, t.$ = Oo, Object.defineProperty(t, "__esModule", {
                                value: !0
                            })
                        }))
                    }).call(t, n(34))
                }, function (e, t, n) {
                    e.exports = n(13)
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(14),
                        o = p(i),
                        a = n(15),
                        s = p(a),
                        u = n(33),
                        f = p(u),
                        c = n(11),
                        l = n(35),
                        d = p(l),
                        h = n(2);

                    function p(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function v(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function m(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }

                    function y(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var g = function () {
                            function e(t) {
                                y(this, e), this._resetForNewSession(t), this._resetForNewInterval()
                            }
                            return r(e, [{
                                key: "_resetForNewSession",
                                value: function (e) {
                                    this.currentPlaybackSpeed = 1, this.lastDownloadedBytes = 0, this.playUrl = e, this.domain = new URL(e).hostname, this.playStartTimestampMillis = (new Date).getTime(), this.lastVideoBuffered = {
                                        start: -1e9,
                                        end: -1e9
                                    }
                                }
                            }, {
                                key: "_resetForNewInterval",
                                value: function () {
                                    this.currentPlaybackSpeedTimestamp = (new Date).getTime(), this.playbackSpeedStat = {
                                        "0.75x": 0,
                                        "1.25x": 0,
                                        "1.5x": 0
                                    }, this.statTimestampMillis = (new Date).getTime(), this.bufferingCount = 0, this.bufferingDurationMillis = 0, this.bufferingStartTimestampMillis = this.bufferingStartTimestampMillis ? (new Date).getTime() : null, this.downloadedBytes = 0, this.audioBufferedMillis = 0, this.videoBufferedMillis = 0, this.demuxedDurationSec = 0, this.excessiveDataDroppedSec = 0, this.blockCountWithBuffer = 0, this.bufferDuringBlockSum = 0
                                }
                            }, {
                                key: "videoBufferedUpdated",
                                value: function (e) {
                                    if (0 !== e.length) {
                                        var t = e.start(e.length - 1),
                                            n = e.end(e.length - 1);
                                        t > this.lastVideoBuffered.end + .001 ? (this.demuxedDurationSec += n - t, this.lastVideoBuffered = {
                                            start: t,
                                            end: n
                                        }) : (this.demuxedDurationSec += Math.max(0, n - this.lastVideoBuffered.end), this.lastVideoBuffered.end = n)
                                    }
                                }
                            }, {
                                key: "playbackSpeedChanged",
                                value: function (e) {
                                    var t = .001,
                                        n = (new Date).getTime(),
                                        r = n - this.currentPlaybackSpeedTimestamp,
                                        i = Math.abs(e - .75) < t ? "0.75x" : Math.abs(e - 1.25) < t ? "1.25x" : Math.abs(e - 1.5) < t ? "1.5x" : null;
                                    i && (this.playbackSpeedStat[i] += r, this.currentPlaybackSpeedTimestamp = (new Date).getTime())
                                }
                            }, {
                                key: "bufferingStarted",
                                value: function (e) {
                                    var t = .3;
                                    ++this.bufferingCount, this.bufferingStartTimestampMillis = (new Date).getTime(), e > t && (this.bufferDuringBlockSum += e, this.blockCountWithBuffer++)
                                }
                            }, {
                                key: "bufferingEnded",
                                value: function () {
                                    var e = (new Date).getTime();
                                    null != this.bufferingStartTimestampMillis && (this.bufferingDurationMillis += e - this.bufferingStartTimestampMillis), this.bufferingStartTimestampMillis = null
                                }
                            }, {
                                key: "updateDownloadedBytes",
                                value: function (e) {
                                    var t = e - this.lastDownloadedBytes;
                                    this.downloadedBytes += t, this.lastDownloadedBytes = e
                                }
                            }, {
                                key: "setAudioBufferedSec",
                                value: function (e) {
                                    this.audioBufferedMillis = Math.round(1e3 * e)
                                }
                            }, {
                                key: "setVideoBufferedSec",
                                value: function (e) {
                                    this.videoBufferedMillis = Math.round(1e3 * e)
                                }
                            }, {
                                key: "excessiveDataDropped",
                                value: function (e) {
                                    this.excessiveDataDroppedSec += e
                                }
                            }, {
                                key: "buildAndStartNewInterval",
                                value: function () {
                                    var e = (new Date).getTime(),
                                        t = null == this.bufferingStartTimestampMillis ? 0 : e - this.bufferingStartTimestampMillis,
                                        n = (this.bufferingStartTimestampMillis, {
                                            play_url: this.playUrl,
                                            domain: this.domain,
                                            play_start_time: this.playStartTimestampMillis,
                                            tick_start: this.statTimestampMillis,
                                            tick_duration: e - this.statTimestampMillis,
                                            block_count: this.bufferingCount,
                                            buffer_time: this.bufferingDurationMillis + t,
                                            kbytes_received: this.downloadedBytes >> 10,
                                            played_video_duration: e - this.statTimestampMillis - (this.bufferingDurationMillis + t),
                                            demuxed_video_duration: Math.round(1e3 * this.demuxedDurationSec),
                                            dropped_packet_duration: Math.round(1e3 * this.excessiveDataDroppedSec),
                                            a_buf_len: this.audioBufferedMillis,
                                            v_buf_len: this.videoBufferedMillis,
                                            speed_chg_metric: this.playbackSpeedStat,
                                            block_count_with_buffer: this.blockCountWithBuffer,
                                            buffer_during_block: this.blockCountWithBuffer > 0 ? Math.round(this.bufferDuringBlockSum / this.blockCountWithBuffer * 1e3) : 0
                                        });
                                    return this._resetForNewInterval(), n
                                }
                            }]), e
                        }(),
                        b = function (e) {
                            function t(e, n) {
                                y(this, t);
                                var r = v(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                                return r.tag = "flv-player", r.video = e, r.box = "flv", r.timer = null, r.seekTimer = null, r.checkBufferTimer = null, r.realtimeBeaconTimer = null, r.config = (0, c.deepAssign)({}, f.default, n), r.requestSetTime = !1, r.throttle = null, r.bindEvents(), r.attachMedia(), r.initLogger(), console.log("kernel", t.version), r
                            }
                            return m(t, e), r(t, null, [{
                                key: "isSupport",
                                value: function () {
                                    var e = new c.UAParser,
                                        t = e.getBrowser();
                                    return !("Safari" === t.name && parseInt(t.major) < 10) && !(!window.MediaSource || !window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.640020,mp4a.40.2"'))
                                }
                            }, {
                                key: "version",
                                get: function () {
                                    return "1.4.11"
                                }
                            }]), r(t, [{
                                key: "initLogger",
                                value: function () {
                                    var e = this;
                                    this.logger = new d.default, this.logger.on("performance", (function (t) {
                                        e.emit("performance", t.data)
                                    }))
                                }
                            }, {
                                key: "internalPropertyHandle",
                                value: function () {
                                    if (Object.getOwnPropertyDescriptor) {
                                        var e = this,
                                            t = Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype, "currentTime");
                                        Object.defineProperty(this.video, "currentTime", {
                                            get: function () {
                                                return t.get.call(e.video)
                                            },
                                            set: function (n) {
                                                if (e.currentTimeLock) return t.set.call(e.video, n);
                                                throw new Error("can not set currentTime by youself")
                                            }
                                        })
                                    }
                                }
                            }, {
                                key: "bindEvents",
                                value: function () {
                                    this.video && (this._onVideoCanplay = this._onVideoCanplay.bind(this), this._onVideoWaiting = this._onVideoWaiting.bind(this), this._onVideoPlaying = this._onVideoPlaying.bind(this), this._onVideoTimeupdate = this._onVideoTimeupdate.bind(this), this.video.addEventListener("canplay", this._onVideoCanplay), this.video.addEventListener("waiting", this._onVideoWaiting), this.video.addEventListener("playing", this._onVideoPlaying), this.video.addEventListener("timeupdate", this._onVideoTimeupdate), this._lastBufferd = null, this.checkBufferTimer = setInterval(this._checkBuffer.bind(this), 200))
                                }
                            }, {
                                key: "unbindMediaSourceEvent",
                                value: function (e) {
                                    e.off("error"), e.off("bufferFull"), e.off("updateend"), e.off("player-event")
                                }
                            }, {
                                key: "attachMedia",
                                value: function () {
                                    var e = this;
                                    this.mediaSource = new o.default(this.video, this.config), this.mediaSource.on("error", (function (t) {
                                        e.emit("error", t.data), e.transmuxer && e.transmuxer.pause()
                                    })), this.mediaSource.on("bufferFull", (function () {
                                        e.pauseTransmuxer()
                                    })), this.mediaSource.on("updateend", (function () {
                                        e.onmseUpdateEnd()
                                    })), this.mediaSource.on("player-event", (function (t) {
                                        e.logger.record(t.data)
                                    }))
                                }
                            }, {
                                key: "load",
                                value: function (e) {
                                    e && (this.config.src = e), this.realtimeBeaconBuilder = new g(this.config.src), this.realtimeBeaconTimer = setInterval(this._sendRealtimeBeacon.bind(this), 1e4), this.transmuxer = new s.default(this.mediaSource, this.config, this.globalEvent), this.transmuxerEvent(this.transmuxer), this.transmuxer.loadSource()
                                }
                            }, {
                                key: "unbindTransmuxerEvent",
                                value: function (e) {
                                    e.off("mediaSegment"), e.off("mediaSegmentInit"), e.off("error"), e.off("end"), e.off("heartbeat"), e.off("performance"), e.off("mediaInfo"), e.off("player-event")
                                }
                            }, {
                                key: "transmuxerEvent",
                                value: function (e) {
                                    var t = this,
                                        n = this.mediaSource;
                                    e.on("mediaSegment", (function (e) {
                                        n.emit("mediaSegment", e.data)
                                    })), e.on("mediaSegmentInit", (function (e) {
                                        n.emit("mediaSegmentInit", e.data)
                                    })), e.on("error", (function (r) {
                                        t.emit("error", r.data), e.pause(), n.pause()
                                    })), e.on("end", (function (e) {
                                        n.endOfStream()
                                    })), e.on("heartbeat", (function (e) {
                                        t.emit("heartbeat", e.data), t.realtimeBeaconBuilder.updateDownloadedBytes(e.data.totalReceive)
                                    })), e.on("performance", (function (e) {
                                        var n = e.data,
                                            r = n.type,
                                            i = n.value;
                                        return "first-flv-to-mp4" === r ? (t.firstFlvToMp4 = t.firstFlvToMp4 || 0, void(t.firstFlvToMp4 += i)) : "receive-first-package-duration" === r ? (t.receiveFirstPAckageDuration = t.receiveFirstPAckageDuration || 0, void(t.receiveFirstPAckageDuration += i)) : void("first-flv-package-duration" === r && (t.firstFlvPackageDuration = t.firstFlvPackageDuration || 0, t.firstFlvPackageDuration += i))
                                    })), e.on("mediaInfo", (function (e) {
                                        t.mediaInfo ? t.emit("mediaInfo", e.data) : (t.mediaInfo = e, t.emit("mediaInfo", e.data), n.init(e.data), t.video.src = URL.createObjectURL(n.mediaSource), t.video.addEventListener("seeking", t._throttle.call(t)))
                                    })), e.on("player-event", (function (e) {
                                        t.logger.record(e.data)
                                    }))
                                }
                            }, {
                                key: "_throttle",
                                value: function () {
                                    return this.throttle = (0, c.throttle)(this._seek.bind(this), 200, {
                                        leading: !1
                                    }), this.throttle
                                }
                            }, {
                                key: "isTimeinBuffered",
                                value: function (e) {
                                    for (var t = this.video.buffered, n = 0; n < t.length; n++) {
                                        var r = t.start(n),
                                            i = t.end(n);
                                        if (e >= r && e < i) return !0
                                    }
                                    return !1
                                }
                            }, {
                                key: "_getBufferEnd",
                                value: function (e, t) {
                                    for (var n = 0, r = 0; r < e.length; r++) {
                                        var i = e.start(r),
                                            o = e.end(r);
                                        if (i <= t && t < o) return n = o, n
                                    }
                                }
                            }, {
                                key: "getCurrentBufferEnd",
                                value: function () {
                                    return this._getBufferEnd(this.video.buffered, this.video.currentTime)
                                }
                            }, {
                                key: "_seek",
                                value: function (e) {
                                    var t = this;
                                    if (this.transmuxer) {
                                        this.currentTimeLock = !0;
                                        var n = (0, c.isNumber)(e) && !isNaN(e) ? e : this.video.currentTime;
                                        if (this.requestSetTime) return this.requestSetTime = !1, void(this.currentTimeLock = !1);
                                        if (this.isTimeinBuffered(n)) {
                                            if (this.config.alwaysSeekKeyframe) {
                                                var r = this.transmuxer.getNearestKeyframe(Math.floor(1e3 * n));
                                                r && (this.requestSetTime = !0, this.video.currentTime = r.keyframetime / 1e3)
                                            }
                                        } else {
                                            c.Log.verbose(this.tag, "do seek"), this.transmuxer.pause();
                                            var i = this.transmuxer.getNearestKeyframe(Math.floor(1e3 * n));
                                            n = i.keyframetime / 1e3, this.seekTimer = setTimeout((function () {
                                                t.mediaSource.seek(n), t.transmuxer.seek(i)
                                            }), 100), this.requestSetTime = !0, this.video.currentTime = n, window.clearInterval(this.timer), this.timer = null
                                        }
                                        return this.currentTimeLock = !1, n
                                    }
                                }
                            }, {
                                key: "onmseUpdateEnd",
                                value: function () {
                                    if (this.mediaSource.sourceBuffer.video && this.realtimeBeaconBuilder.videoBufferedUpdated(this.mediaSource.sourceBuffer.video.buffered), !this.config.isLive) {
                                        var e = this.getCurrentBufferEnd(),
                                            t = this.video.currentTime;
                                        e >= t + this.config.lazyLoadMaxDuration && null === this.timer && (c.Log.verbose(this.tag, "Maximum buffering duration exceeded, suspend transmuxing task"), this.pauseTransmuxer())
                                    }
                                }
                            }, {
                                key: "heartbeat",
                                value: function () {
                                    for (var e = this.video.currentTime, t = this.video.buffered, n = !1, r = 0; r < t.length; r++) {
                                        var i = t.start(r),
                                            o = t.end(r);
                                        if (e >= i && e < o) {
                                            e >= o - this.config.lazyLoadRecoverDuration && (n = !0);
                                            break
                                        }
                                    }
                                    n && (window.clearInterval(this.timer), this.timer = null, c.Log.verbose(this.tag, "Continue loading from paused position"), this.transmuxer.resume(), this.mediaSource.resume())
                                }
                            }, {
                                key: "_checkBuffer",
                                value: function () {
                                    var e = this,
                                        t = .001;
                                    if (this.config.isLive) {
                                        var n = this.getCurrentBufferEnd();
                                        if ("undefined" === typeof n) {
                                            var r = this.video.buffered,
                                                i = r.length;
                                            if (!(i > 0 && r.start(i - 1) > this.video.currentTime + t)) return;
                                            c.Log.verbose("currentTime being in no-data GaP detected. Jumping to " + r.start(i - 1)), this.video.currentTime = r.start(i - 1), n = r.end(i - 1)
                                        }
                                        var o = n - this.video.currentTime;
                                        if (null != this._lastBufferd) {
                                            var a = function (t) {
                                                c.Log.verbose("Change playback rate from " + e.video.playbackRate + " to " + t + ", buffered:" + o), e.video.playbackRate = t, e.realtimeBeaconBuilder.playbackSpeedChanged(t)
                                            };
                                            this.video.playbackRate < 1 - t ? o > 5 - t && a(1) : this.video.playbackRate > 1 + t && o < 5 + t && a(1)
                                        }
                                        this._lastBufferd = o
                                    }
                                }
                            }, {
                                key: "_sendRealtimeBeacon",
                                value: function () {
                                    if (this.mediaSource.sourceBuffer.audio) {
                                        var e = this._getBufferEnd(this.mediaSource.sourceBuffer.audio.buffered, this.video.currentTime);
                                        this.realtimeBeaconBuilder.setAudioBufferedSec(e - this.video.currentTime)
                                    }
                                    if (this.mediaSource.sourceBuffer.video) {
                                        var t = this._getBufferEnd(this.mediaSource.sourceBuffer.video.buffered, this.video.currentTime);
                                        this.realtimeBeaconBuilder.setVideoBufferedSec(t - this.video.currentTime)
                                    }
                                    var n = this.realtimeBeaconBuilder.buildAndStartNewInterval();
                                    this.emit("realtimeBeacon", n)
                                }
                            }, {
                                key: "_onVideoCanplay",
                                value: function () {
                                    this.logger.record({
                                        type: h.PLAYER_EVENTS.CANPLAY,
                                        ts: Date.now()
                                    }), this.config.isLive && this.video.play(), this.config.lockInternalProperty && this.internalPropertyHandle()
                                }
                            }, {
                                key: "_onVideoWaiting",
                                value: function () {
                                    if (this.video && !this.video.seeking) {
                                        var e = 0,
                                            t = this.video.buffered;
                                        t.length > 0 && (e = this.video.buffered.end(t.length - 1) - this.video.currentTime), this.realtimeBeaconBuilder.bufferingStarted(e)
                                    }
                                }
                            }, {
                                key: "_onVideoPlaying",
                                value: function () {
                                    for (var e = 0, t = this.video.buffered, n = 0; n < t.length; n++)
                                        if (t.start(n) - .1 <= this.video.currentTime && t.end(n) >= this.video.currentTime) {
                                            e = t.end(n) - this.video.currentTime;
                                            break
                                        } this.logger.record({
                                        type: h.PLAYER_EVENTS.PLAYING,
                                        buffered: e,
                                        ts: Date.now()
                                    }), this.realtimeBeaconBuilder.bufferingEnded()
                                }
                            }, {
                                key: "_onVideoTimeupdate",
                                value: function () {
                                    console.log("time update"), this.video.removeEventListener("timeupdate", this._onVideoTimeupdate), this.logger.record({
                                        type: h.PLAYER_EVENTS.TIMEUPDATE,
                                        ts: Date.now()
                                    })
                                }
                            }, {
                                key: "pauseTransmuxer",
                                value: function () {
                                    this.transmuxer.pause(), this.mediaSource.pause(), this.timer || (this.timer = setInterval(this.heartbeat.bind(this), 1e3))
                                }
                            }, {
                                key: "resume",
                                value: function () {
                                    this._seek(0)
                                }
                            }, {
                                key: "destroy",
                                value: function () {
                                    window.clearInterval(this.timer), window.clearInterval(this.seekTimer), window.clearInterval(this.checkBufferTimer), this.realtimeBeaconTimer && (window.clearInterval(this.realtimeBeaconTimer), this._sendRealtimeBeacon(), this.realtimeBeaconTimer = null), this.video.removeEventListener("canplay", this._onVideoCanplay), this.video.removeEventListener("seeking", this.throttle), this.video.removeEventListener("waiting", this._onVideoWaiting), this.video.removeEventListener("playing", this._onVideoPlaying), this.video.removeEventListener("timeupdate", this._onVideoTimeupdate), this.video && (URL.revokeObjectURL(this.video.src), this.video.src = "", this.video.removeAttribute("src"), this.transmuxer && (this.unbindTransmuxerEvent(this.transmuxer), this.transmuxer.pause(), this.transmuxer.destroy(), this.transmuxer = null), this.mediaSource && (this.unbindMediaSourceEvent(this.mediaSource), this.mediaSource.destroy(), this.mediaSource = null)), this.logger.off("performance"), this.logger = null
                                }
                            }, {
                                key: "seek",
                                value: function (e) {
                                    return this._seek(e)
                                }
                            }, {
                                key: "play",
                                value: function () {
                                    return this.video.play()
                                }
                            }, {
                                key: "pause",
                                value: function () {
                                    return this.video.pause()
                                }
                            }, {
                                key: "refresh",
                                value: function () {
                                    this.transmuxer && this.mediaSource ? this._seek(0) : c.Log.verbose(this.tag, "transmuxer & mediaSource not ready")
                                }
                            }, {
                                key: "stopLoad",
                                value: function () {
                                    this.transmuxer && this.transmuxer.pause(), this.mediaSource && this.mediaSource.pause(), this.realtimeBeaconTimer && (window.clearInterval(this.realtimeBeaconTimer), this._sendRealtimeBeacon(), this.realtimeBeaconTimer = null)
                                }
                            }]), t
                        }(c.CustEvent);
                    t.default = b
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(0),
                        o = n(4),
                        a = f(o),
                        s = n(1),
                        u = n(2);

                    function f(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function c(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function l(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function d(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var h = function (e) {
                        function t(e, n) {
                            c(this, t);
                            var r = l(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return r.video = e, r.config = n, r.tag = "mse-controller", r.e = {
                                onSourceOpen: r.onSourceOpen.bind(r),
                                onSourceEnded: r.onSourceEnded.bind(r),
                                onSourceClose: r.onSourceClose.bind(r),
                                onSourceBufferError: r.onSourceBufferError.bind(r)
                            }, r.hasVideo = !0, r.hasAudio = !0, r.removeRangesList = {
                                video: [],
                                audio: []
                            }, r.removeBucketing = !1, r.timer = {
                                video: null,
                                audio: null
                            }, r.queue = {
                                video: [],
                                audio: []
                            }, r.sourceBuffer = {
                                video: null,
                                audio: null
                            }, r.mimeCodec = {
                                video: null,
                                audio: null
                            }, r.sourceBufferEvent(), r.complete = !1, r
                        }
                        return d(t, e), r(t, [{
                            key: "init",
                            value: function (e) {
                                if (this.emit("player-event", {
                                        type: u.PLAYER_EVENTS.MEDIA_INFO,
                                        ts: Date.now()
                                    }), this.mediaSource) return a.default.Error(this.tag, "MediaSource has been attached to an HTMLMediaElement!"), void this.emit("error", {
                                    errno: s.ERRORNO.MEDIASOURCE_ERROR,
                                    errmsg: "MediaSource has been attached to an HTMLMediaElement!"
                                });
                                e.hasAudio ? this.mimeCodec["audio"] = 'audio/mp4; codecs="' + e.audioCodec + '"' : this.hasAudio = !1, e.hasVideo ? this.mimeCodec["video"] = 'video/mp4; codecs="' + e.videoCodec + '"' : this.hasVideo = !1;
                                var t = this.mediaSource = new window.MediaSource;
                                t.addEventListener("sourceopen", this.e.onSourceOpen), t.addEventListener("sourceended", this.e.onSourceEnded), t.addEventListener("sourceclose", this.e.onSourceClose)
                            }
                        }, {
                            key: "onSourceOpen",
                            value: function () {
                                a.default.verbose(this.tag, "MediaSource onSourceOpen"), this.mediaSource.removeEventListener("sourceopen", this.e.onSourceOpen), this.hasAudio && this.addSourceBuffer("audio"), this.hasVideo && this.addSourceBuffer("video"), this.hasQueueList() && this.doUpdate(), this.emit("source_open")
                            }
                        }, {
                            key: "addSourceBuffer",
                            value: function (e) {
                                var t = this;
                                this.sourceBuffer[e] = this.mediaSource.addSourceBuffer(this.mimeCodec[e]), a.default.verbose(this.tag, "add sourcebuffer " + e);
                                var n = this.sourceBuffer[e];
                                n.addEventListener("error", this.e.onSourceBufferError), n.addEventListener("abort", (function () {
                                    return a.default.verbose(t.tag, "sourceBuffer: abort")
                                })), n.addEventListener("updateend", (function () {
                                    t.sourceBuffer && (t.hasRemoveList() ? (t.removeRangesList.video.length && t.cleanRangesList("video"), t.removeRangesList.audio.length && t.cleanRangesList("audio")) : t.hasQueueList() ? t.doUpdate() : t.complete && !t.sourceBuffer[e].updating && t.endOfStream(), t.emit("updateend"))
                                }))
                            }
                        }, {
                            key: "hasRemoveList",
                            value: function () {
                                return this.removeRangesList.video.length || this.removeRangesList.audio.length
                            }
                        }, {
                            key: "hasQueueList",
                            value: function () {
                                return this.queue.video.length || this.queue.audio.length
                            }
                        }, {
                            key: "doUpdate",
                            value: function () {
                                for (var e in this.queue)
                                    if (this.queue[e].length > 0 && !this.sourceBuffer[e].updating) {
                                        var t = this.queue[e].shift();
                                        this.appendBuffer(t, e)
                                    }
                            }
                        }, {
                            key: "sourceBufferEvent",
                            value: function () {
                                var e = this;
                                this.on("mediaSegment", (function (t) {
                                    var n = t.data,
                                        r = n.type;
                                    e.emit("player-event", {
                                        type: u.PLAYER_EVENTS.MEDIA_SEGMENT,
                                        byteLength: n.data.byteLength,
                                        ts: Date.now()
                                    }), e.needCleanupSourceBuffer(r) && e.doCleanupSourceBuffer(r), e.queue[r].push(n.data), e.sourceBuffer[r] && !e.hasRemoveList() && e.doUpdate()
                                })), this.on("mediaSegmentInit", (function (t) {
                                    e.emit("player-event", {
                                        type: u.PLAYER_EVENTS.MEDIA_SEGMENT_INIT,
                                        ts: Date.now()
                                    });
                                    var n = t.data,
                                        r = n.type;
                                    e.queue[r].push(n.data)
                                }))
                            }
                        }, {
                            key: "needCleanupSourceBuffer",
                            value: function (e) {
                                var t = this.video.currentTime,
                                    n = this.video.buffered;
                                return n.length >= 1 && t - n.start(0) >= this.config.autoCleanupMaxBackwardDuration
                            }
                        }, {
                            key: "doCleanupSourceBuffer",
                            value: function (e) {
                                for (var t = this.video.currentTime, n = this.sourceBuffer[e], r = n.buffered, i = !1, o = 0; o < r.length; o++) {
                                    var a = r.start(o),
                                        s = r.end(o);
                                    if (a <= t && t < s + 3 && t - a >= this.config.autoCleanupMaxBackwardDuration) {
                                        i = !0;
                                        var u = t - this.config.autoCleanupMinBackwardDuration;
                                        this.removeRangesList[e].push({
                                            start: a,
                                            end: u
                                        })
                                    }
                                }
                                i && !this.sourceBuffer[e].updating && this.cleanRangesList(e)
                            }
                        }, {
                            key: "cleanRangesList",
                            value: function (e) {
                                if (!this.sourceBuffer[e].updating) {
                                    var t = this.sourceBuffer[e];
                                    while (this.removeRangesList[e].length && !t.updating) {
                                        var n = this.removeRangesList[e].shift();
                                        t.remove(n.start, n.end)
                                    }
                                }
                            }
                        }, {
                            key: "appendBuffer",
                            value: function (e, t) {
                                if (this.sourceBuffer[t]) try {
                                    this.sourceBuffer[t].appendBuffer(e.buffer)
                                } catch (i) {
                                    var n = this.video.currentTime - 3;
                                    if (console.log("removeEnd", n), n > 0)
                                        for (var r in this.sourceBuffer) this.sourceBuffer[r].remove(0, n);
                                    this.queue[t].unshift(e), setTimeout(this.doUpdate.bind(this), 100), console.error(i)
                                }
                            }
                        }, {
                            key: "onSourceEnded",
                            value: function () {
                                a.default.verbose(this.tag, "MediaSource onSourceEnded")
                            }
                        }, {
                            key: "onSourceClose",
                            value: function () {
                                a.default.verbose(this.tag, "MediaSource onSourceClose"), this.mediaSource && null !== this.e && (this.mediaSource.removeEventListener("sourceopen", this.e.onSourceOpen), this.mediaSource.removeEventListener("sourceended", this.e.onSourceEnded), this.mediaSource.removeEventListener("sourceclose", this.e.onSourceClose))
                            }
                        }, {
                            key: "onSourceBufferError",
                            value: function (e) {
                                this.emit("error", {
                                    errnono: s.ERRORNO.SOURCEBUFFER_ERROR,
                                    errmsg: e.message
                                }), a.default.error(this.tag, "SourceBuffer Error: " + e)
                            }
                        }, {
                            key: "seek",
                            value: function () {
                                for (var e in this.sourceBuffer) {
                                    var t = this.sourceBuffer[e];
                                    if (t) {
                                        if ("open" === this.mediaSource.readyState) try {
                                            t.abort()
                                        } catch (o) {
                                            this.emit("error", {
                                                errno: s.ERRORNO.SBABORT_ERROR,
                                                errmsg: o
                                            }), a.default.error(this.tag, o.message)
                                        }
                                        this.queue[e] = [];
                                        for (var n = 0; n < t.buffered.length; n++) {
                                            var r = t.buffered.start(n),
                                                i = t.buffered.end(n);
                                            this.removeRangesList[e].push({
                                                start: r,
                                                end: i
                                            })
                                        }
                                        t.updating || this.cleanRangesList(e)
                                    }
                                }
                            }
                        }, {
                            key: "resume",
                            value: function () {
                                this.doUpdate()
                            }
                        }, {
                            key: "pause",
                            value: function () {}
                        }, {
                            key: "endOfStream",
                            value: function () {
                                if (this.mediaSource) {
                                    var e = this.mediaSource;
                                    this.complete = !0;
                                    var t = this.sourceBuffer;
                                    if (t.video && t.video.updating || t.audio && t.audio.updating) return;
                                    if ("open" === e.readyState) try {
                                        e.endOfStream(), this.complete = !1
                                    } catch (n) {
                                        a.default.verbose(this.tag, n), this.emit("error", {
                                            errno: s.ERRORNO.ENDOFSTREAM_ERROR,
                                            errmsg: n
                                        })
                                    }
                                }
                            }
                        }, {
                            key: "destroy",
                            value: function () {
                                if (this.mediaSource) {
                                    var e = this.mediaSource;
                                    this.queue = {
                                        video: [],
                                        audio: []
                                    }, this.sourceBuffer = {
                                        video: null,
                                        audio: null
                                    }, this.mimeCodec = {
                                        video: null,
                                        audio: null
                                    };
                                    var t = this.sourceBuffer;
                                    this.complete = !1, this.endOfStream(), t && ("closed" !== e.readyState && (e.removeSourceBuffer(t), t.removeEventListener("error", this.e.onSourceBufferError), t.removeEventListener("updateend", this.e.onSourceBufferUpdateEnd)), this.sourceBuffer = null), e.removeEventListener("sourceopen", this.e.onSourceOpen), e.removeEventListener("sourceended", this.e.onSourceEnded), e.removeEventListener("sourceclose", this.e.onSourceClose), this.mediaSource = null
                                }
                                this.off("mediaSegmentInit"), this.off("mediaSegment")
                            }
                        }]), t
                    }(i.CustEvent);
                    t.default = h
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(5),
                        o = h(i),
                        a = n(0),
                        s = n(21),
                        u = h(s),
                        f = n(7),
                        c = h(f),
                        l = n(1),
                        d = n(2);

                    function h(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function p(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function v(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function m(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var y = function (e) {
                        function t(e, n, r) {
                            p(this, t);
                            var i = v(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return i.config = n || {}, i.tag = "transmuxer", i.loader = null, i.CPU = null, i.keyframePoint = !1, i.w = null, i.config.webWorker && (i.onWorkMessage = i.onWorkMessage.bind(i), i.w = (0, u.default)(32), i.w.addEventListener("message", i.onWorkMessage), i.w.postMessage(JSON.parse(JSON.stringify({
                                cmd: "init",
                                data: n
                            })))), i.lock = 0, i
                        }
                        return m(t, e), r(t, [{
                            key: "onWorkMessage",
                            value: function (e) {
                                this.parseCallback.call(this, e.data)
                            }
                        }, {
                            key: "loadSource",
                            value: function () {
                                this.config.webWorker ? this.w.postMessage({
                                    cmd: "loadSource"
                                }) : (this.loader = new o.default(this.config), this.loader.arrivalDataCallback = this.arrivalDataCallback.bind(this), this.loaderBindEvent(this.loader), this.loader.open())
                            }
                        }, {
                            key: "loaderBindEvent",
                            value: function (e) {
                                var t = this;
                                e.on("end", (function () {
                                    t.emit("end")
                                })), e.on("error", (function (e) {
                                    t.emit("error", e.data)
                                })), e.on("heartbeat", (function (e) {
                                    t.emit("heartbeat", e.data)
                                })), this.loader.on("player-event", (function (e) {
                                    t.emit("player-event", e.data)
                                }))
                            }
                        }, {
                            key: "loaderUnbindEvent",
                            value: function (e) {
                                e.off("end"), e.off("error"), e.off("heartbeat"), e.off("player-event")
                            }
                        }, {
                            key: "arrivalDataCallback",
                            value: function (e, t, n) {
                                var r = this;
                                this.CPU || (this.CPU = new c.default(this.config), this.CPU.onInitSegment = this.onRemuxerInitSegmentArrival.bind(this), this.CPU.onMediaSegment = this.onRemuxerMediaSegmentArrival.bind(this), this.CPU.onMediaInfo = this.onMediaInfo.bind(this), this.CPU.onCdnDropFrame = this.onCdnDropFrame.bind(this), this.CPU.on("error", (function (e) {
                                    r.emit("error", {
                                        errno: l.ERRORNO.CODEC_ERROR,
                                        errmsg: e.data
                                    })
                                }))), void 0 !== n && this.CPU.seek(n), this.emit("player-event", {
                                    type: d.PLAYER_EVENTS.MEDIA_DEMUX_FLV,
                                    byteLength: e.byteLength,
                                    ts: Date.now()
                                });
                                var i = this.CPU.setflv(e);
                                return i
                            }
                        }, {
                            key: "parseCallback",
                            value: function (e) {
                                switch (e.cmd) {
                                    case "mediaSegmentInit":
                                        this.emit("mediaSegmentInit", e.source);
                                        break;
                                    case "mediaSegment":
                                        this.emit("mediaSegment", e.source);
                                        break;
                                    case "mediainfo":
                                        this.mediaInfo = e.source, this.emit("mediaInfo", e.source);
                                        break;
                                    case "end":
                                        this.emit("end");
                                        break;
                                    case "error":
                                        this.emit("error", e.source);
                                        break;
                                    case "player-event":
                                        this.emit("player-event", e.source);
                                        break;
                                    case "heartbeat":
                                        this.emit("heartbeat", e.source);
                                        break;
                                    case "cdnDropFrame":
                                        this.emit("cdnDropFrame", {
                                            dropAudio: e.source
                                        });
                                        break
                                }
                            }
                        }, {
                            key: "onMediaInfo",
                            value: function (e) {
                                this.mediaInfo = e, this.emit("mediaInfo", e)
                            }
                        }, {
                            key: "onCdnDropFrame",
                            value: function (e) {
                                this.emit("cdnDropFrame", {
                                    dropAudio: e
                                })
                            }
                        }, {
                            key: "onRemuxerInitSegmentArrival",
                            value: function (e, t) {
                                this.emit("mediaSegmentInit", {
                                    type: "video",
                                    data: e
                                }), t && this.emit("mediaSegmentInit", {
                                    type: "audio",
                                    data: t
                                })
                            }
                        }, {
                            key: "onRemuxerMediaSegmentArrival",
                            value: function (e, t) {
                                this.emit("mediaSegment", {
                                    type: e,
                                    data: t
                                })
                            }
                        }, {
                            key: "getMediaInfo",
                            value: function () {
                                return this.mediaInfo
                            }
                        }, {
                            key: "pause",
                            value: function () {
                                this.config.webWorker ? this.w.postMessage({
                                    cmd: "pause"
                                }) : this.loader.pause()
                            }
                        }, {
                            key: "resume",
                            value: function () {
                                this.config.webWorker ? this.w.postMessage({
                                    cmd: "resume"
                                }) : this.loader.resume()
                            }
                        }, {
                            key: "isSeekable",
                            value: function () {
                                return this.mediaInfo.hasKeyframesIndex
                            }
                        }, {
                            key: "seek",
                            value: function (e) {
                                if (!this.isSeekable()) return this.emit("error", {
                                    errno: l.ERRORNO.CANNOT_SEEK,
                                    errmsg: "这个flv视频不支持seek"
                                }), !1;
                                this.config.webWorker ? this.w.postMessage({
                                    cmd: "seek",
                                    keyframe: e
                                }) : this.loader.seek(e.keyframePoint, !1, e.keyframetime)
                            }
                        }, {
                            key: "destroy",
                            value: function () {
                                this.config.webWorker ? (this.w.postMessage({
                                    cmd: "destroy"
                                }), this.w.removeEventListener("message", this.onWorkMessage), this.w.terminate()) : (this.loader && (this.loaderUnbindEvent(this.loader), this.loader.destroy(), this.loader = null), this.CPU && (this.CPU.off("error"), this.CPU = null))
                            }
                        }, {
                            key: "getNearestKeyframe",
                            value: function (e) {
                                if (this.mediaInfo && this.mediaInfo.keyframesIndex) {
                                    var t = this.mediaInfo.keyframesIndex.times,
                                        n = this.mediaInfo.keyframesIndex.filepositions,
                                        r = function e(r, i) {
                                            var o = r.length,
                                                a = Math.floor(o / 2);
                                            if (1 === o) {
                                                var s = t.indexOf(r[0]);
                                                return {
                                                    keyframetime: r[0],
                                                    keyframePoint: n[s]
                                                }
                                            }
                                            if (r[a] > i) return e(r.slice(0, a), i);
                                            if (r[a] < i) return e(r.slice(a), i);
                                            var u = t.indexOf(r[0]);
                                            return {
                                                keyframetime: r[0],
                                                keyframePoint: n[u]
                                            }
                                        };
                                    return r(t, e)
                                }
                                return 0
                            }
                        }]), t
                    }(a.CustEvent);
                    t.default = y
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(17),
                        o = c(i),
                        a = n(0),
                        s = n(4),
                        u = c(s),
                        f = n(1);

                    function c(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function l(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function d(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function h(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var p = function (e) {
                        function t(e, n) {
                            l(this, t);
                            var r = d(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return r.tag = "fetch", r.fetching = !1, r.config = n, r.range = {
                                from: 0,
                                to: 524288
                            }, r.src = e, r.totalRange = null, r.block = 524288, r.reader = null, r.requestAbort = !1, r.arrivalDataCallback = null, r.bytesStart = 0, r.heartbeat = null, r
                        }
                        return h(t, e), r(t, null, [{
                            key: "isSupport",
                            value: function () {
                                return !(!self.fetch || !self.ReadableStream)
                            }
                        }]), r(t, [{
                            key: "open",
                            value: function (e, t) {
                                var n = this;
                                this.requestAbort = !1;
                                var r = new Headers,
                                    i = e || {
                                        from: 0,
                                        to: -1
                                    };
                                if (!this.config.isLive) {
                                    this.range.from = i.from, this.range.to = i.to;
                                    var a = (0, o.default)(i, this.config);
                                    if ("string" === typeof a) this.src = this.config.src + a;
                                    else
                                        for (var s in a) r.append(s, a[s])
                                }
                                t && (this.bytesStart = 0), this.bytesStart = e.from;
                                var u = {
                                        method: "GET",
                                        headers: r,
                                        mode: "cors",
                                        cache: "default",
                                        referrerPolicy: "no-referrer-when-downgrade"
                                    },
                                    c = Date.now();
                                fetch(this.src, u).then((function (e) {
                                    if (n.emit("performance", {
                                            type: "receive-first-package-duration",
                                            value: Date.now() - c
                                        }), e.ok) {
                                        var r = e.body.getReader();
                                        return n.pump(r, t)
                                    }
                                })).catch((function (e) {
                                    n.emit("error", {
                                        errno: f.ERRORNO.NET_ERROR,
                                        errmsg: e.toString()
                                    })
                                }))
                            }
                        }, {
                            key: "pause",
                            value: function () {
                                this.requestAbort = !0
                            }
                        }, {
                            key: "pump",
                            value: function (e, t) {
                                var n = this;
                                return e.read().then((function (r) {
                                    if (r.done) n.emit("end"), u.default.verbose(n.tag, "load end");
                                    else {
                                        if (!0 === n.requestAbort) return n.requestAbort = !1, e.cancel();
                                        var i = r.value.buffer;
                                        n.arrivalDataCallback && (n.arrivalDataCallback(i, n.bytesStart, t), n.bytesStart += i.byteLength), setTimeout((function () {
                                            n.pump(e)
                                        }), 0)
                                    }
                                })).catch((function (e) {
                                    n.emit("error", {
                                        errno: f.ERRORNO.NET_ERROR,
                                        errmsg: e.message
                                    })
                                }))
                            }
                        }]), t
                    }(a.CustEvent);
                    t.default = p
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    }), t.default = function (e, t) {
                        if ("range" === t.seekType) {
                            var n = {},
                                r = void 0;
                            return r = -1 !== e.to ? "bytes=" + e.from.toString() + "-" + e.to.toString() : "bytes=" + e.from.toString() + "-", n["Range"] = r, n
                        }
                        var i = void 0;
                        return i = -1 !== e.to ? "?start=" + e.from.toString() + "&end=" + e.to.toString() : "?start=" + e.from.toString(), i
                    }
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(6),
                        o = u(i),
                        a = n(0),
                        s = n(1);

                    function u(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function f(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function c(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function l(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var d = function (e) {
                        function t(e, n) {
                            f(this, t);
                            var r = c(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return r.tag = "RangeLoader", r.xhr = null, r.src = e, r.totalLength = null, r.chunkSizeKB = 524288, r.range = {}, r.bytesStart = 0, r.needSeek = !1, r.keyframePoint = null, r
                        }
                        return l(t, e), r(t, null, [{
                            key: "isSupport",
                            value: function () {
                                try {
                                    var e = new XMLHttpRequest;
                                    return e.open("GET", "https://example.com", !0), e.responseType = "arraybuffer", "arraybuffer" === e.responseType
                                } catch (t) {
                                    return !1
                                }
                            }
                        }]), r(t, [{
                            key: "open",
                            value: function (e, t) {
                                var n = this.xhr = new XMLHttpRequest;
                                n.open("GET", this.src, !0), n.responseType = "arraybuffer", n.onreadystatechange = this.onReadyStateChange.bind(this), n.onprogress = this.onProgress.bind(this), n.onload = this.onLoad.bind(this), n.onerror = this.onXhrError.bind(this);
                                var r = e || {
                                    from: 0,
                                    to: -1
                                };
                                this.range.from = r.from, -1 === r.to && (r.to = r.from + this.chunkSizeKB), t && (this.bytesStart = e.from, this.needSeek = !0, this.keyframePoint = t), this.range.to = r.to;
                                var i = (0, o.default)(r).headers;
                                for (var a in i) n.setRequestHeader(a, i[a]);
                                n.send()
                            }
                        }, {
                            key: "pause",
                            value: function () {
                                this.abort()
                            }
                        }, {
                            key: "abort",
                            value: function () {
                                this.xhr && (this.xhr.onreadystatechange = null, this.xhr.onprogress = null, this.xhr.onload = null, this.xhr.onerror = null, this.xhr.abort(), this.xhr = null)
                            }
                        }, {
                            key: "destroy",
                            value: function () {
                                this.xhr && (this.abort(), this.xhr.onreadystatechange = null, this.xhr.onprogress = null, this.xhr.onload = null, this.xhr.onerror = null, this.xhr = null), this.totalLength = null, this.bytesStart = null, this.range = {}
                            }
                        }, {
                            key: "onReadyStateChange",
                            value: function (e) {
                                var t = this.xhr;
                                if (2 === t.readyState && (t.status < 200 || t.status > 299)) {
                                    var n = {
                                        from: this.range.from,
                                        to: this.range.to,
                                        url: this.src,
                                        msg: "http Error: http code " + t.status
                                    };
                                    this.emit("error", {
                                        errno: s.ERRORNO.NET_ERROR,
                                        errmsg: n
                                    })
                                }
                            }
                        }, {
                            key: "onProgress",
                            value: function (e) {
                                this.totalLength || (this.totalLength = e.total, this.abort(), this.open())
                            }
                        }, {
                            key: "onLoad",
                            value: function (e) {
                                if (this.totalLength && this.arrivalDataCallback) {
                                    var t = e.target.response;
                                    this.needSeek ? (this.needSeek = !1, this.arrivalDataCallback(t, this.bytesStart, this.keyframePoint)) : this.arrivalDataCallback(t, this.bytesStart), this.bytesStart += t.byteLength, this.open({
                                        from: this.bytesStart,
                                        to: -1
                                    })
                                }
                            }
                        }, {
                            key: "onXhrError",
                            value: function (e) {
                                var t = {
                                    from: this.range.from,
                                    to: this.range.to,
                                    url: this.src,
                                    msg: e.constructor.name + " " + e.type
                                };
                                this.emit("error", {
                                    errno: s.ERRORNO.NET_ERROR,
                                    errmsg: t
                                })
                            }
                        }]), t
                    }(a.CustEvent);
                    t.default = d
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(0),
                        o = n(1);

                    function a(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function s(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function u(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var f = function (e) {
                        function t(e, n) {
                            a(this, t);
                            var r = s(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return r.tag = "WebSocket", r.src = e, r._ws = null, r._requestAbort = !1, r._receivedLength = 0, r
                        }
                        return u(t, e), r(t, null, [{
                            key: "isSupported",
                            value: function () {
                                try {
                                    return "undefined" !== typeof window.WebSocket
                                } catch (e) {
                                    return !1
                                }
                            }
                        }]), r(t, [{
                            key: "open",
                            value: function (e, t) {
                                try {
                                    var n = this._ws = new self.WebSocket(this.src);
                                    n.binaryType = "arraybuffer", n.onopen = this.onWebSocketOpen.bind(this), n.onclose = this.onWebSocketClose.bind(this), n.onmessage = this.onWebSocketMessage.bind(this), n.onerror = this.onWebSocketError.bind(this)
                                } catch (i) {
                                    var r = {
                                        code: i.code,
                                        msg: i.message
                                    };
                                    this.emit("error", {
                                        errno: o.ERRORNO.NET_ERROR,
                                        errmsg: r
                                    })
                                }
                            }
                        }, {
                            key: "pause",
                            value: function () {
                                var e = this._ws;
                                !e || 0 !== e.readyState && 1 !== e.readyState || (this._requestAbort = !0, e.close()), this._ws = null
                            }
                        }, {
                            key: "onWebSocketClose",
                            value: function (e) {
                                !0 !== this._requestAbort ? this.emit("end") : this._requestAbort = !1
                            }
                        }, {
                            key: "onWebSocketOpen",
                            value: function () {}
                        }, {
                            key: "onWebSocketMessage",
                            value: function (e) {
                                var t = this;
                                if (e.data instanceof ArrayBuffer) this.dispatchArrayBuffer(e.data);
                                else if (e.data instanceof Blob) {
                                    var n = new FileReader;
                                    n.onload = function () {
                                        t.dispatchArrayBuffer(n.result)
                                    }, n.readAsArrayBuffer(e.data)
                                } else {
                                    var r = {
                                        code: -1,
                                        msg: "Unsupported WebSocket message type: " + e.data.constructor.name
                                    };
                                    this.emit("error", {
                                        errno: o.ERRORNO.NET_ERROR,
                                        errmsg: r
                                    })
                                }
                            }
                        }, {
                            key: "dispatchArrayBuffer",
                            value: function (e) {
                                var t = e,
                                    n = this.receivedLength;
                                this.receivedLength += t.byteLength, this.arrivalDataCallback && this.arrivalDataCallback(t, n)
                            }
                        }, {
                            key: "onWebSocketError",
                            value: function (e) {
                                var t = {
                                    code: e.code,
                                    msg: e.message
                                };
                                this.emit("error", {
                                    errno: o.ERRORNO.NET_ERROR,
                                    errmsg: t
                                })
                            }
                        }]), t
                    }(i.CustEvent);
                    t.default = f
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(6),
                        o = u(i),
                        a = n(0),
                        s = n(1);

                    function u(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function f(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function c(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function l(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var d = function (e) {
                        function t(e, n) {
                            f(this, t);
                            var r = c(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return r.tag = "mozChunkLoader", r.xhr = null, r.src = e, r.config = n, r.totalLength = null, r.chunkSizeKB = 393216, r.range = {}, r.bytesStart = 0, r.keyframePoint = null, r
                        }
                        return l(t, e), r(t, null, [{
                            key: "isSupport",
                            value: function () {
                                try {
                                    var e = new XMLHttpRequest;
                                    return e.open("GET", "https://example.com", !0), e.responseType = "moz-chunked-arraybuffer", "moz-chunked-arraybuffer" === e.responseType
                                } catch (t) {
                                    return !1
                                }
                            }
                        }]), r(t, [{
                            key: "open",
                            value: function (e, t) {
                                var n = this.xhr = new XMLHttpRequest;
                                if (n.open("GET", this.src, !0), n.responseType = "moz-chunked-arraybuffer", n.onreadystatechange = this.onReadyStateChange.bind(this), n.onprogress = this.onProgress.bind(this), n.onload = this.onLoadEnd.bind(this), n.onerror = this.onXhrError.bind(this), !this.config.isLive) {
                                    var r = e || {
                                        from: 0,
                                        to: -1
                                    };
                                    this.range.from = r.from, this.range.to = r.to, t && (this.needSeek = !0, this.keyframePoint = t);
                                    var i = (0, o.default)(r).headers;
                                    for (var a in i) n.setRequestHeader(a, i[a])
                                }
                                n.send()
                            }
                        }, {
                            key: "pause",
                            value: function () {
                                this.abort()
                            }
                        }, {
                            key: "abort",
                            value: function () {
                                this.xhr && (this.xhr.onreadystatechange = null, this.xhr.onprogress = null, this.xhr.onload = null, this.xhr.onerror = null, this.xhr.abort(), this.xhr = null)
                            }
                        }, {
                            key: "destroy",
                            value: function () {
                                this.xhr && (this.abort(), this.xhr.onreadystatechange = null, this.xhr.onprogress = null, this.xhr.onload = null, this.xhr.onerror = null, this.xhr = null), this.totalLength = null, this.bytesStart = null, this.range = {}
                            }
                        }, {
                            key: "onReadyStateChange",
                            value: function (e) {
                                var t = this.xhr;
                                if (2 === t.readyState && (t.status < 200 || t.status > 299)) {
                                    var n = {
                                        from: this.range.from,
                                        to: this.range.to,
                                        url: this.src,
                                        msg: "http Error: http code " + t.status
                                    };
                                    this.emit("error", {
                                        errno: s.ERRORNO.NET_ERROR,
                                        errmsg: n
                                    })
                                }
                            }
                        }, {
                            key: "onProgress",
                            value: function (e) {
                                this.totalLength || (this.totalLength = e.total, null !== e.total && 0 !== e.total && (this.totalLength = e.total));
                                var t = e.target.response;
                                this.needSeek ? (this.needSeek = !1, this.arrivalDataCallback(t, this.bytesStart, this.keyframePoint)) : this.arrivalDataCallback(t, this.bytesStart), this.bytesStart += t.byteLength
                            }
                        }, {
                            key: "onLoadEnd",
                            value: function (e) {
                                this.emit(this.tag, "video load end")
                            }
                        }, {
                            key: "onXhrError",
                            value: function (e) {
                                var t = {
                                    from: this.range.from,
                                    to: this.range.to,
                                    url: this.src,
                                    msg: e.constructor.name + " " + e.type
                                };
                                this.emit("error", {
                                    errno: s.ERRORNO.NET_ERROR,
                                    errmsg: t
                                })
                            }
                        }]), t
                    }(a.CustEvent);
                    t.default = d
                }, function (e, t, n) {
                    function r(e) {
                        var t = {};

                        function n(r) {
                            if (t[r]) return t[r].exports;
                            var i = t[r] = {
                                i: r,
                                l: !1,
                                exports: {}
                            };
                            return e[r].call(i.exports, i, i.exports, n), i.l = !0, i.exports
                        }
                        n.m = e, n.c = t, n.i = function (e) {
                            return e
                        }, n.d = function (e, t, r) {
                            n.o(e, t) || Object.defineProperty(e, t, {
                                configurable: !1,
                                enumerable: !0,
                                get: r
                            })
                        }, n.r = function (e) {
                            Object.defineProperty(e, "__esModule", {
                                value: !0
                            })
                        }, n.n = function (e) {
                            var t = e && e.__esModule ? function () {
                                return e["default"]
                            } : function () {
                                return e
                            };
                            return n.d(t, "a", t), t
                        }, n.o = function (e, t) {
                            return Object.prototype.hasOwnProperty.call(e, t)
                        }, n.p = "/", n.oe = function (e) {
                            throw console.error(e), e
                        };
                        var r = n(n.s = ENTRY_MODULE);
                        return r.default || r
                    }
                    var i = "[\\.|\\-|\\+|\\w|/|@]+",
                        o = "\\(\\s*(/\\*.*?\\*/)?\\s*.*?(" + i + ").*?\\)";

                    function a(e) {
                        return (e + "").replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&")
                    }

                    function s(e) {
                        return !isNaN(1 * e)
                    }

                    function u(e, t, r) {
                        var u = {};
                        u[r] = [];
                        var f = t.toString(),
                            c = f.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);
                        if (!c) return u;
                        var l, d = c[1],
                            h = new RegExp("(\\\\n|\\W)" + a(d) + o, "g");
                        while (l = h.exec(f)) "dll-reference" !== l[3] && u[r].push(l[3]);
                        h = new RegExp("\\(" + a(d) + '\\("(dll-reference\\s(' + i + '))"\\)\\)' + o, "g");
                        while (l = h.exec(f)) e[l[2]] || (u[r].push(l[1]), e[l[2]] = n(l[1]).m), u[l[2]] = u[l[2]] || [], u[l[2]].push(l[4]);
                        for (var p = Object.keys(u), v = 0; v < p.length; v++)
                            for (var m = 0; m < u[p[v]].length; m++) s(u[p[v]][m]) && (u[p[v]][m] = 1 * u[p[v]][m]);
                        return u
                    }

                    function f(e) {
                        var t = Object.keys(e);
                        return t.reduce((function (t, n) {
                            return t || e[n].length > 0
                        }), !1)
                    }

                    function c(e, t) {
                        var n = {
                                main: [t]
                            },
                            r = {
                                main: []
                            },
                            i = {
                                main: {}
                            };
                        while (f(n))
                            for (var o = Object.keys(n), a = 0; a < o.length; a++) {
                                var s = o[a],
                                    c = n[s],
                                    l = c.pop();
                                if (i[s] = i[s] || {}, !i[s][l] && e[s][l]) {
                                    i[s][l] = !0, r[s] = r[s] || [], r[s].push(l);
                                    for (var d = u(e, e[s][l], s), h = Object.keys(d), p = 0; p < h.length; p++) n[h[p]] = n[h[p]] || [], n[h[p]] = n[h[p]].concat(d[h[p]])
                                }
                            }
                        return r
                    }
                    e.exports = function (e, t) {
                        t = t || {};
                        var i = {
                                main: n.m
                            },
                            o = t.all ? {
                                main: Object.keys(i.main)
                            } : c(i, e),
                            a = "";
                        Object.keys(o).filter((function (e) {
                            return "main" !== e
                        })).forEach((function (e) {
                            var t = 0;
                            while (o[e][t]) t++;
                            o[e].push(t), i[e][t] = "(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })", a = a + "var " + e + " = (" + r.toString().replace("ENTRY_MODULE", JSON.stringify(t)) + ")({" + o[e].map((function (t) {
                                return JSON.stringify(t) + ": " + i[e][t].toString()
                            })).join(",") + "});\n"
                        })), a = a + "new ((" + r.toString().replace("ENTRY_MODULE", JSON.stringify(e)) + ")({" + o.main.map((function (e) {
                            return JSON.stringify(e) + ": " + i.main[e].toString()
                        })).join(",") + "}))(self);";
                        var s = new window.Blob([a], {
                            type: "text/javascript"
                        });
                        if (t.bare) return s;
                        var u = window.URL || window.webkitURL || window.mozURL || window.msURL,
                            f = u.createObjectURL(s),
                            l = new window.Worker(f);
                        return l.objectURL = f, l
                    }
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(23),
                        o = c(i),
                        a = n(8),
                        s = c(a),
                        u = n(3),
                        f = c(u);

                    function c(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function l(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var d = function () {
                        function e() {
                            l(this, e), this.tempUint8 = new Uint8Array, this.arrTag = [], this.index = 0, this.tempArr = [], this.stop = !1, this.offset = 0, this.frist = !0, this._hasAudio = !1, this._hasVideo = !1, this._dispose = !1, this.busy = !1, this.busyArr = []
                        }
                        return r(e, [{
                            key: "setFlv",
                            value: function (e) {
                                return this.busy = !0, this._dispose = !1, this.stop = !1, this.arrTag = [], this.index = 0, this.tempUint8 = e, this.tempUint8.length > 13 && 70 == this.tempUint8[0] && 76 == this.tempUint8[1] && 86 == this.tempUint8[2] ? (this.probe(this.tempUint8.buffer), this.read(9), this.read(4), this.parse(), this.frist = !1, this.busy = !1, this.offset) : (this.frist || this.parse(), this.offset)
                            }
                        }, {
                            key: "probe",
                            value: function (e) {
                                var t = new Uint8Array(e),
                                    n = {
                                        match: !1
                                    };
                                if (70 !== t[0] || 76 !== t[1] || 86 !== t[2] || 1 !== t[3]) return n;
                                var r = (4 & t[4]) >>> 2 !== 0,
                                    i = 0 !== (1 & t[4]);
                                return r || i ? (this._hasAudio = s.default._hasAudio = r, this._hasVideo = s.default._hasVideo = i, {
                                    match: !0,
                                    hasAudioTrack: r,
                                    hasVideoTrack: i
                                }) : n
                            }
                        }, {
                            key: "dispose",
                            value: function () {}
                        }, {
                            key: "parse",
                            value: function () {
                                while (this.index < this.tempUint8.length && !this.stop) {
                                    this.offset = this.index;
                                    var e = new o.default;
                                    if (this.tempUint8.length - this.index >= 11) {
                                        if (e.tagType = this.read(1)[0], e.dataSize = this.read(3), e.Timestamp = this.read(4), e.StreamID = this.read(3), 18 != e.tagType && 8 != e.tagType && 9 != e.tagType) throw new f.default("wrong tagType" + e.tagType);
                                        this.tempUint8.length - this.index >= this.getBodySum(e.dataSize) + 4 ? (e.body = this.read(this.getBodySum(e.dataSize)), 9 == e.tagType && this._hasVideo && this.arrTag.push(e), 8 == e.tagType && this._hasAudio && this.arrTag.push(e), 18 == e.tagType && this.arrTag.push(e), e.size = this.read(4), this.offset = this.index) : this.stop = !0
                                    } else this.stop = !0
                                }
                                return this.offset
                            }
                        }, {
                            key: "read",
                            value: function (e) {
                                var t = this.tempUint8.slice(this.index, this.index + e);
                                return this.index += e, t
                            }
                        }, {
                            key: "getBodySum",
                            value: function (e) {
                                var t = "";
                                return t += 1 == e[0].toString(16).length ? "0" + e[0].toString(16) : e[0].toString(16), t += 1 == e[1].toString(16).length ? "0" + e[1].toString(16) : e[1].toString(16), t += 1 == e[2].toString(16).length ? "0" + e[2].toString(16) : e[2].toString(16), parseInt(t, 16)
                            }
                        }]), e
                    }();
                    t.default = d
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                        function e(e, t) {
                            for (var n = 0; n < t.length; n++) {
                                var r = t[n];
                                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                            }
                        }
                        return function (t, n, r) {
                            return n && e(t.prototype, n), r && e(t, r), t
                        }
                    }();

                    function i(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var o = function () {
                        function e() {
                            i(this, e), this.tagType = -1, this.dataSize = -1, this.Timestamp = -1, this.StreamID = -1, this.body = -1, this.time = -1, this.arr = [], this.size = -1
                        }
                        return r(e, [{
                            key: "getTime",
                            value: function () {
                                this.arr = [];
                                for (var e = 0; e < this.Timestamp.length; e++) this.arr.push(1 == this.Timestamp[e].toString(16).length ? "0" + this.Timestamp[e].toString(16) : this.Timestamp[e].toString(16));
                                this.arr.pop();
                                var t = this.arr.join("");
                                return this.time = parseInt(t, 16), parseInt(t, 16)
                            }
                        }]), e
                    }();
                    t.default = o
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(25),
                        o = s(i),
                        a = n(9);
                    s(a);

                    function s(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function u(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var f = null,
                        c = function () {
                            function e() {
                                u(this, e)
                            }
                            return r(e, null, [{
                                key: "parseObject",
                                value: function (t, n, r) {
                                    var i = e.parseString(t, n, r),
                                        o = e.parseScript(t, n + i.size),
                                        a = o.objectEnd;
                                    return {
                                        data: {
                                            name: i.data,
                                            value: o.data
                                        },
                                        size: o.size,
                                        objectEnd: a
                                    }
                                }
                            }, {
                                key: "parseVariable",
                                value: function (t, n, r) {
                                    return e.parseObject(t, n, r)
                                }
                            }, {
                                key: "parseLongString",
                                value: function (e, t, n) {
                                    var r = new DataView(e, t),
                                        i = r.getUint32(0, !f),
                                        a = void 0;
                                    return a = i > 0 ? (0, o.default)(new Uint8Array(e, t + 4, i)) : "", {
                                        data: a,
                                        size: 4 + i
                                    }
                                }
                            }, {
                                key: "parseDate",
                                value: function (e, t, n) {
                                    var r = new DataView(e, t),
                                        i = r.getFloat64(0, !f),
                                        o = r.getInt16(8, !f);
                                    return i += 60 * o * 1e3, {
                                        data: new Date(i),
                                        size: 10
                                    }
                                }
                            }, {
                                key: "parseString",
                                value: function (e, t, n) {
                                    var r = new DataView(e, t),
                                        i = r.getUint16(0, !f),
                                        a = void 0;
                                    return a = i > 0 ? (0, o.default)(new Uint8Array(e, t + 2, i)) : "", {
                                        data: a,
                                        size: 2 + i
                                    }
                                }
                            }, {
                                key: "parseMetadata",
                                value: function (t) {
                                    f = function () {
                                        var e = new ArrayBuffer(2);
                                        return new DataView(e).setInt16(0, 256, !0), 256 === new Int16Array(e)[0]
                                    }();
                                    var n = e.parseScript(t, 0),
                                        r = e.parseScript(t, n.size, t.length - n.size),
                                        i = {};
                                    return i[n.data] = r.data, i
                                }
                            }, {
                                key: "parseScript",
                                value: function (t, n, r) {
                                    var i = n,
                                        o = new Uint8Array(t),
                                        a = o.buffer,
                                        s = new DataView(a, 0, r),
                                        u = null,
                                        c = s.getUint8(i);
                                    switch (i += 1, c) {
                                        case 0:
                                            u = s.getFloat64(i, !f), i += 8;
                                            break;
                                        case 1:
                                            var l = s.getUint8(i);
                                            u = !!l, i += 1;
                                            break;
                                        case 2:
                                            var d = e.parseString(a, i);
                                            u = d.data, i += d.size;
                                            break;
                                        case 3:
                                            u = {};
                                            var h = 0;
                                            9 === (16777215 & s.getUint32(r - 4, !f)) && (h = 3);
                                            while (i < r - 4) {
                                                var p = e.parseObject(a, i, r - n - h);
                                                if (p.objectEnd) break;
                                                u[p.data.name] = p.data.value, i = p.size
                                            }
                                            if (i <= r - 3) {
                                                var m = 16777215 & v.getUint32(i - 1, !f);
                                                9 === m && (i += 3)
                                            }
                                            break;
                                        case 8:
                                            u = {}, i += 4;
                                            9 === (16777215 & s.getUint32(r - 4, !f)) && 3;
                                            while (i < r - 8) {
                                                var y = e.parseVariable(a, i);
                                                if (y.objectEnd) break;
                                                u[y.data.name] = y.data.value, i = y.size
                                            }
                                            if (i <= r - 3) {
                                                var g = 16777215 & s.getUint32(i - 1, !f);
                                                9 === g && (i += 3)
                                            }
                                            break;
                                        case 9:
                                            u = void 0, i = 1, !0;
                                            break;
                                        case 10:
                                            u = [];
                                            var b = s.getUint32(i, !f);
                                            i += 4;
                                            for (var _ = 0; _ < b; _++) {
                                                var w = e.parseScript(a, i);
                                                u.push(w.data), i = w.size
                                            }
                                            break;
                                        case 11:
                                            var S = e.parseDate(a, i + 1, r - 1);
                                            u = S.data, i += S.size;
                                            break;
                                        case 12:
                                            var k = e.parseString(a, i + 1, r - 1);
                                            u = k.data, i += k.size;
                                            break;
                                        default:
                                            i = r, console.log("AMF", "Unsupported AMF value type " + c)
                                    }
                                    return {
                                        data: u,
                                        size: i
                                    }
                                }
                            }]), e
                        }();
                    t.default = c
                }, function (e, t, n) {
                    "use strict";

                    function r(e) {
                        var t = [],
                            n = e,
                            r = 0,
                            o = e.length;
                        while (r < o)
                            if (n[r] < 128) t.push(String.fromCharCode(n[r])), ++r;
                            else {
                                if (n[r] < 192);
                                else if (n[r] < 224) {
                                    if (i(n, r, 1)) {
                                        var a = (31 & n[r]) << 6 | 63 & n[r + 1];
                                        if (a >= 128) {
                                            t.push(String.fromCharCode(65535 & a)), r += 2;
                                            continue
                                        }
                                    }
                                } else if (n[r] < 240) {
                                    if (i(n, r, 2)) {
                                        var s = (15 & n[r]) << 12 | (63 & n[r + 1]) << 6 | 63 & n[r + 2];
                                        if (s >= 2048 && 55296 !== (63488 & s)) {
                                            t.push(String.fromCharCode(65535 & s)), r += 3;
                                            continue
                                        }
                                    }
                                } else if (n[r] < 248 && i(n, r, 3)) {
                                    var u = (7 & n[r]) << 18 | (63 & n[r + 1]) << 12 | (63 & n[r + 2]) << 6 | 63 & n[r + 3];
                                    if (u > 65536 && u < 1114112) {
                                        u -= 65536, t.push(String.fromCharCode(u >>> 10 | 55296)), t.push(String.fromCharCode(1023 & u | 56320)), r += 4;
                                        continue
                                    }
                                }
                                t.push(String.fromCharCode(65533)), ++r
                            } return t.join("")
                    }

                    function i(e, t, n) {
                        var r = e;
                        if (t + n < r.length) {
                            while (n--)
                                if (128 !== (192 & r[++t])) return !1;
                            return !0
                        }
                        return !1
                    }
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    }), t.default = r
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                        function e(e, t) {
                            for (var n = 0; n < t.length; n++) {
                                var r = t[n];
                                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                            }
                        }
                        return function (t, n, r) {
                            return n && e(t.prototype, n), r && e(t, r), t
                        }
                    }();

                    function i(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var o = function () {
                        function e(t) {
                            i(this, e), this.TAG = this.constructor.name, this._buffer = t, this._buffer_index = 0, this._total_bytes = t.byteLength, this._total_bits = 8 * t.byteLength, this._current_word = 0, this._current_word_bits_left = 0
                        }
                        return r(e, [{
                            key: "destroy",
                            value: function () {
                                this._buffer = null
                            }
                        }, {
                            key: "_fillCurrentWord",
                            value: function () {
                                var e = this._total_bytes - this._buffer_index;
                                if (e <= 0) throw new IllegalStateException("ExpGolomb: _fillCurrentWord() but no bytes available");
                                var t = Math.min(4, e),
                                    n = new Uint8Array(4);
                                n.set(this._buffer.subarray(this._buffer_index, this._buffer_index + t)), this._current_word = new DataView(n.buffer).getUint32(0, !1), this._buffer_index += t, this._current_word_bits_left = 8 * t
                            }
                        }, {
                            key: "readBits",
                            value: function (e) {
                                if (e > 32) throw new InvalidArgumentException("ExpGolomb: readBits() bits exceeded max 32bits!");
                                if (e <= this._current_word_bits_left) {
                                    var t = this._current_word >>> 32 - e;
                                    return this._current_word <<= e, this._current_word_bits_left -= e, t
                                }
                                var n = this._current_word_bits_left ? this._current_word : 0;
                                n >>>= 32 - this._current_word_bits_left;
                                var r = e - this._current_word_bits_left;
                                this._fillCurrentWord();
                                var i = Math.min(r, this._current_word_bits_left),
                                    o = this._current_word >>> 32 - i;
                                return this._current_word <<= i, this._current_word_bits_left -= i, n = n << i | o, n
                            }
                        }, {
                            key: "readBool",
                            value: function () {
                                return 1 === this.readBits(1)
                            }
                        }, {
                            key: "readByte",
                            value: function () {
                                return this.readBits(8)
                            }
                        }, {
                            key: "_skipLeadingZero",
                            value: function () {
                                var e = void 0;
                                for (e = 0; e < this._current_word_bits_left; e++)
                                    if (0 !== (this._current_word & 2147483648 >>> e)) return this._current_word <<= e, this._current_word_bits_left -= e, e;
                                return this._fillCurrentWord(), e + this._skipLeadingZero()
                            }
                        }, {
                            key: "readUEG",
                            value: function () {
                                var e = this._skipLeadingZero();
                                return this.readBits(e + 1) - 1
                            }
                        }, {
                            key: "readSEG",
                            value: function () {
                                var e = this.readUEG();
                                return 1 & e ? e + 1 >>> 1 : -1 * (e >>> 1)
                            }
                        }]), e
                    }();
                    t.default = o
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                        function e(e, t) {
                            for (var n = 0; n < t.length; n++) {
                                var r = t[n];
                                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                            }
                        }
                        return function (t, n, r) {
                            return n && e(t.prototype, n), r && e(t, r), t
                        }
                    }();

                    function i(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var o = function () {
                        function e() {
                            i(this, e), this.mimeType = null, this.duration = null, this.hasAudio = null, this.hasVideo = null, this.audioCodec = null, this.videoCodec = null, this.audioDataRate = null, this.videoDataRate = null, this.audioSampleRate = null, this.audioChannelCount = null, this.width = null, this.height = null, this.fps = null, this.profile = null, this.level = null, this.chromaFormat = null, this.sarNum = null, this.sarDen = null, this.metadata = null, this.segments = null, this.segmentCount = null, this.hasKeyframesIndex = null, this.keyframesIndex = null
                        }
                        return r(e, [{
                            key: "isComplete",
                            value: function () {
                                var e = !1 === this.hasAudio || !0 === this.hasAudio && null != this.audioCodec && null != this.audioSampleRate && null != this.audioChannelCount,
                                    t = !1 === this.hasVideo || !0 === this.hasVideo && null != this.videoCodec && null != this.width && null != this.height && null != this.fps && null != this.profile && null != this.level && null != this.chromaFormat && null != this.sarNum && null != this.sarDen;
                                return null != this.mimeType && null != this.duration && null != this.metadata && null != this.hasKeyframesIndex && e && t
                            }
                        }, {
                            key: "isSeekable",
                            value: function () {
                                return !0 === this.hasKeyframesIndex
                            }
                        }]), e
                    }();
                    t.default = o
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(29),
                        o = l(i),
                        a = n(30),
                        s = l(a),
                        u = n(10),
                        f = l(u),
                        c = n(31);

                    function l(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }

                    function d(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var h = function () {
                        function e(t) {
                            d(this, e), this.TAG = "MP4Remuxer", this._isLive = !0 === t.isLive, this._dtsBase = -1, this._dtsBaseInited = !1, this._audioDtsBase = 1 / 0, this._videoDtsBase = 1 / 0, this._audioNextDts = void 0, this._videoNextDts = void 0, this._audioMeta = null, this._videoMeta = null, this._audioSegmentInfoList = new c.MediaSegmentInfoList("audio"), this._videoSegmentInfoList = new c.MediaSegmentInfoList("video"), this._onInitSegment = null, this._onMediaSegment = null, this._forceFirstIDR = !(!s.default.chrome || !(s.default.version.major < 50 || 50 === s.default.version.major && s.default.version.build < 2661)), this._fillSilentAfterSeek = s.default.msedge || s.default.msie, this._mp3UseMpegAudio = !s.default.firefox
                        }
                        return r(e, [{
                            key: "destroy",
                            value: function () {
                                this._dtsBase = -1, this._dtsBaseInited = !1, this._audioMeta = null, this._videoMeta = null, this._audioSegmentInfoList.clear(), this._audioSegmentInfoList = null, this._videoSegmentInfoList.clear(), this._videoSegmentInfoList = null, this._onInitSegment = null, this._onMediaSegment = null
                            }
                        }, {
                            key: "bindDataSource",
                            value: function (e) {
                                return e.onDataAvailable = this.remux.bind(this), e.onTrackMetadata = this._onTrackMetadataReceived.bind(this), this
                            }
                        }, {
                            key: "insertDiscontinuity",
                            value: function () {
                                this._audioNextDts = this._videoNextDts = void 0
                            }
                        }, {
                            key: "seek",
                            value: function (e) {
                                this._videoSegmentInfoList.clear(), this._audioSegmentInfoList.clear()
                            }
                        }, {
                            key: "remux",
                            value: function (e, t) {
                                if (!this._onMediaSegment) throw new IllegalStateException("MP4Remuxer: onMediaSegment callback must be specificed!");
                                this._dtsBaseInited || this._calculateDtsBase(e, t), this._remuxVideo(t), this._remuxAudio(e)
                            }
                        }, {
                            key: "_onTrackMetadataReceived",
                            value: function (e, t) {
                                var n = null,
                                    r = "mp4",
                                    i = t.codec;
                                if ("audio" === e) this._audioMeta = t, "mp3" === t.codec && this._mp3UseMpegAudio ? (r = "mpeg", i = "", n = new Uint8Array) : n = f.default.generateInitSegment(t);
                                else {
                                    if ("video" !== e) return;
                                    this._videoMeta = t, n = f.default.generateInitSegment(t)
                                }
                                if (!this._onInitSegment) throw new IllegalStateException("MP4Remuxer: onInitSegment callback must be specified!");
                                this._onInitSegment(e, {
                                    type: e,
                                    data: n.buffer,
                                    codec: i,
                                    container: e + "/" + r,
                                    mediaDuration: t.duration
                                })
                            }
                        }, {
                            key: "_calculateDtsBase",
                            value: function (e, t) {
                                this._dtsBaseInited || (e.samples && e.samples.length && (this._audioDtsBase = e.samples[0].dts), t.samples && t.samples.length && (this._videoDtsBase = t.samples[0].dts), this._dtsBase = Math.min(this._audioDtsBase, this._videoDtsBase), this._dtsBaseInited = !0)
                            }
                        }, {
                            key: "_remuxAudio",
                            value: function (e) {
                                if (null != this._audioMeta) {
                                    var t = e,
                                        n = t.samples,
                                        r = void 0,
                                        i = -1,
                                        a = -1,
                                        s = this._audioMeta.refSampleDuration,
                                        u = "mp3" === this._audioMeta.codec && this._mp3UseMpegAudio,
                                        l = this._dtsBaseInited && void 0 === this._audioNextDts,
                                        d = !1;
                                    if (n && !(n.length <= 1)) {
                                        var h = 0,
                                            p = null,
                                            v = 0;
                                        u ? (h = 0, v = t.length) : (h = 8, v = 8 + t.length);
                                        var m = n[0].dts - this._dtsBase;
                                        if (this._audioNextDts) r = m - this._audioNextDts;
                                        else if (this._audioSegmentInfoList.isEmpty()) r = 0, this._fillSilentAfterSeek && !this._videoSegmentInfoList.isEmpty() && "mp3" !== this._audioMeta.originalCodec && (d = !0);
                                        else {
                                            var y = this._audioSegmentInfoList.getLastSampleBefore(m);
                                            if (null != y) {
                                                var g = m - (y.originalDts + y.duration);
                                                g <= 3 && (g = 0);
                                                var b = y.dts + y.duration + g;
                                                r = m - b
                                            } else r = 0
                                        }
                                        if (d) {
                                            var _ = m - r,
                                                w = this._videoSegmentInfoList.getLastSegmentBefore(m);
                                            if (null != w && w.beginDts < _) {
                                                var S = o.default.getSilentFrame(this._audioMeta.originalCodec, this._audioMeta.channelCount);
                                                if (S) {
                                                    var k = w.beginDts,
                                                        E = _ - w.beginDts;
                                                    Log.v(this.TAG, "InsertPrefixSilentAudio: dts: " + k + ", duration: " + E), n.unshift({
                                                        unit: S,
                                                        dts: k,
                                                        pts: k
                                                    }), v += S.byteLength
                                                }
                                            } else d = !1
                                        }
                                        var O = [];
                                        r = 0;
                                        for (var T = 0; T + 1 < n.length; T++) {
                                            var A = n[T],
                                                x = (A.unit, A.dts - this._dtsBase),
                                                R = x - r; - 1 === i && (i = R);
                                            var M = 0;
                                            if (T !== n.length - 1) {
                                                var D = n[T + 1].dts - this._dtsBase - r;
                                                M = D - R
                                            } else M = O.length >= 1 ? O[O.length - 1].duration : Math.floor(s);
                                            var L = !1,
                                                B = null;
                                            O.push({
                                                dts: R,
                                                pts: R,
                                                cts: 0,
                                                unit: A.unit,
                                                size: A.unit.byteLength,
                                                duration: M,
                                                originalDts: x,
                                                flags: {
                                                    isLeading: 0,
                                                    dependsOn: 1,
                                                    isDependedOn: 0,
                                                    hasRedundancy: 0
                                                }
                                            }), L && O.push.apply(O, B)
                                        }
                                        if (u) p = new Uint8Array(v);
                                        else {
                                            for (var P = 8, C = 0; C < O.length; ++C) P += O[C].size;
                                            p = new Uint8Array(P), p[0] = P >>> 24 & 255, p[1] = P >>> 16 & 255, p[2] = P >>> 8 & 255, p[3] = 255 & P, p.set(f.default.types.mdat, 4)
                                        }
                                        for (var I = 0; I < O.length; I++) {
                                            var j = O[I].unit;
                                            p.set(j, h), h += j.byteLength
                                        }
                                        var N = O[O.length - 1];
                                        a = N.dts + N.duration, this._audioNextDts = a;
                                        var F = new c.MediaSegmentInfo;
                                        F.beginDts = i, F.endDts = a, F.beginPts = i, F.endPts = a, F.originalBeginDts = O[0].originalDts, F.originalEndDts = N.originalDts + N.duration, F.firstSample = new c.SampleInfo(O[0].dts, O[0].pts, O[0].duration, O[0].originalDts, !1), F.lastSample = new c.SampleInfo(N.dts, N.pts, N.duration, N.originalDts, !1), this._isLive || this._audioSegmentInfoList.append(F), t.samples = O, t.sequenceNumber++;
                                        var U = null;
                                        U = u ? new Uint8Array : f.default.moof(t, i), t.samples = [n[n.length - 1]], t.length = 0;
                                        var V = {
                                            type: "audio",
                                            data: this._mergeBoxes(U, p).buffer,
                                            sampleCount: O.length,
                                            info: F
                                        };
                                        u && l && (V.timestampOffset = i), this._onMediaSegment("audio", V)
                                    }
                                }
                            }
                        }, {
                            key: "_remuxVideo",
                            value: function (e) {
                                if (null != this._videoMeta) {
                                    var t = e,
                                        n = t.samples,
                                        r = void 0,
                                        i = -1,
                                        o = -1,
                                        a = -1,
                                        s = -1;
                                    if (n && !(n.length <= 1)) {
                                        var u = n[0].dts - this._dtsBase;
                                        if (this._videoNextDts) r = Math.max(u - this._videoNextDts, 0);
                                        else if (this._videoSegmentInfoList.isEmpty()) r = 0;
                                        else {
                                            var l = this._videoSegmentInfoList.getLastSampleBefore(u);
                                            if (null != l) {
                                                var d = u - (l.originalDts + l.duration);
                                                d <= 3 && (d = 0);
                                                var h = l.dts + l.duration + d;
                                                r = u - h
                                            } else r = 0
                                        }
                                        var p = new c.MediaSegmentInfo,
                                            v = [],
                                            m = r;
                                        r = 0;
                                        for (var y = 0; y + 1 < n.length; y++) {
                                            var g = n[y],
                                                b = g.dts - this._dtsBase - (0 == y ? m : 0),
                                                _ = g.isKeyframe,
                                                w = b - r,
                                                S = g.cts,
                                                k = w + S; - 1 === i && (i = w, a = k);
                                            var E = 0;
                                            if (y !== n.length - 1) {
                                                var O = n[y + 1].dts - this._dtsBase - r;
                                                E = O - w
                                            } else E = v.length >= 1 ? v[v.length - 1].duration : Math.floor(this._videoMeta.refSampleDuration);
                                            if (_) {
                                                var T = new c.SampleInfo(w, k, E, g.dts, !0);
                                                T.fileposition = g.fileposition, p.appendSyncPoint(T)
                                            }
                                            v.push({
                                                dts: w,
                                                pts: k,
                                                cts: S,
                                                units: g.units,
                                                size: g.length,
                                                isKeyframe: _,
                                                duration: E,
                                                originalDts: b,
                                                flags: {
                                                    isLeading: 0,
                                                    dependsOn: _ ? 2 : 1,
                                                    isDependedOn: _ ? 1 : 0,
                                                    hasRedundancy: 0,
                                                    isNonSync: _ ? 0 : 1
                                                }
                                            })
                                        }
                                        for (var A = 8, x = 8, R = 0; R < v.length; ++R) x += v[R].size;
                                        var M = new Uint8Array(x);
                                        M[0] = x >>> 24 & 255, M[1] = x >>> 16 & 255, M[2] = x >>> 8 & 255, M[3] = 255 & x, M.set(f.default.types.mdat, 4);
                                        for (var D = 0; D < v.length; D++) {
                                            var L = v[D].units;
                                            while (L.length) {
                                                var B = L.shift(),
                                                    P = B.data;
                                                M.set(P, A), A += P.byteLength
                                            }
                                        }
                                        var C = v[v.length - 1];
                                        if (o = C.dts + C.duration, s = C.pts + C.duration, this._videoNextDts = o, p.beginDts = i, p.endDts = o, p.beginPts = a, p.endPts = s, p.originalBeginDts = v[0].originalDts, p.originalEndDts = C.originalDts + C.duration, p.firstSample = new c.SampleInfo(v[0].dts, v[0].pts, v[0].duration, v[0].originalDts, v[0].isKeyframe), p.lastSample = new c.SampleInfo(C.dts, C.pts, C.duration, C.originalDts, C.isKeyframe), this._isLive || this._videoSegmentInfoList.append(p), t.samples = v, t.sequenceNumber++, this._forceFirstIDR) {
                                            var I = v[0].flags;
                                            I.dependsOn = 2, I.isNonSync = 0
                                        }
                                        var j = f.default.moof(t, i);
                                        t.samples = [n[n.length - 1]], t.length = 0, this._onMediaSegment("video", {
                                            type: "video",
                                            data: this._mergeBoxes(j, M).buffer,
                                            sampleCount: v.length,
                                            info: p
                                        })
                                    }
                                }
                            }
                        }, {
                            key: "_mergeBoxes",
                            value: function (e, t) {
                                var n = new Uint8Array(e.byteLength + t.byteLength);
                                return n.set(e, 0), n.set(t, e.byteLength), n
                            }
                        }, {
                            key: "onInitSegment",
                            get: function () {
                                return this._onInitSegment
                            },
                            set: function (e) {
                                this._onInitSegment = e
                            }
                        }, {
                            key: "onMediaSegment",
                            get: function () {
                                return this._onMediaSegment
                            },
                            set: function (e) {
                                this._onMediaSegment = e
                            }
                        }]), e
                    }();
                    t.default = h
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                        function e(e, t) {
                            for (var n = 0; n < t.length; n++) {
                                var r = t[n];
                                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                            }
                        }
                        return function (t, n, r) {
                            return n && e(t.prototype, n), r && e(t, r), t
                        }
                    }();

                    function i(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    var o = function () {
                        function e() {
                            i(this, e)
                        }
                        return r(e, null, [{
                            key: "getSilentFrame",
                            value: function (e) {
                                return 1 === e ? new Uint8Array([0, 200, 0, 128, 35, 128]) : 2 === e ? new Uint8Array([33, 0, 73, 144, 2, 25, 0, 35, 128]) : 3 === e ? new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 142]) : 4 === e ? new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 128, 44, 128, 8, 2, 56]) : 5 === e ? new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 130, 48, 4, 153, 0, 33, 144, 2, 56]) : 6 === e ? new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 130, 48, 4, 153, 0, 33, 144, 2, 0, 178, 0, 32, 8, 224]) : null
                            }
                        }]), e
                    }();
                    t.default = o
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = {};

                    function i() {
                        var e = self.navigator.userAgent.toLowerCase(),
                            t = /(edge)\/([\w.]+)/.exec(e) || /(opr)[\/]([\w.]+)/.exec(e) || /(chrome)[ \/]([\w.]+)/.exec(e) || /(iemobile)[\/]([\w.]+)/.exec(e) || /(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(e) || /(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(e) || /(webkit)[ \/]([\w.]+)/.exec(e) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e) || /(msie) ([\w.]+)/.exec(e) || e.indexOf("trident") >= 0 && /(rv)(?::| )([\w.]+)/.exec(e) || e.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e) || [],
                            n = /(ipad)/.exec(e) || /(ipod)/.exec(e) || /(windows phone)/.exec(e) || /(iphone)/.exec(e) || /(kindle)/.exec(e) || /(android)/.exec(e) || /(windows)/.exec(e) || /(mac)/.exec(e) || /(linux)/.exec(e) || /(cros)/.exec(e) || [],
                            i = {
                                browser: t[5] || t[3] || t[1] || "",
                                version: t[2] || t[4] || "0",
                                majorVersion: t[4] || t[2] || "0",
                                platform: n[0] || ""
                            },
                            o = {};
                        if (i.browser) {
                            o[i.browser] = !0;
                            var a = i.majorVersion.split(".");
                            o.version = {
                                major: parseInt(i.majorVersion, 10),
                                string: i.version
                            }, a.length > 1 && (o.version.minor = parseInt(a[1], 10)), a.length > 2 && (o.version.build = parseInt(a[2], 10))
                        }
                        if (i.platform && (o[i.platform] = !0), (o.chrome || o.opr || o.safari) && (o.webkit = !0), o.rv || o.iemobile) {
                            o.rv && delete o.rv;
                            var s = "msie";
                            i.browser = s, o[s] = !0
                        }
                        if (o.edge) {
                            delete o.edge;
                            var u = "msedge";
                            i.browser = u, o[u] = !0
                        }
                        if (o.opr) {
                            var f = "opera";
                            i.browser = f, o[f] = !0
                        }
                        if (o.safari && o.android) {
                            var c = "android";
                            i.browser = c, o[c] = !0
                        }
                        for (var l in o.name = i.browser, o.platform = i.platform, r) r.hasOwnProperty(l) && delete r[l];
                        r = o
                    }
                    i(), t.default = r
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                        function e(e, t) {
                            for (var n = 0; n < t.length; n++) {
                                var r = t[n];
                                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                            }
                        }
                        return function (t, n, r) {
                            return n && e(t.prototype, n), r && e(t, r), t
                        }
                    }();

                    function i(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }
                    t.SampleInfo = function e(t, n, r, o, a) {
                        i(this, e), this.dts = t, this.pts = n, this.duration = r, this.originalDts = o, this.isSyncPoint = a, this.fileposition = null
                    }, t.MediaSegmentInfo = function () {
                        function e() {
                            i(this, e), this.beginDts = 0, this.endDts = 0, this.beginPts = 0, this.endPts = 0, this.originalBeginDts = 0, this.originalEndDts = 0, this.syncPoints = [], this.firstSample = null, this.lastSample = null
                        }
                        return r(e, [{
                            key: "appendSyncPoint",
                            value: function (e) {
                                e.isSyncPoint = !0, this.syncPoints.push(e)
                            }
                        }]), e
                    }(), t.IDRSampleList = function () {
                        function e() {
                            i(this, e), this._list = []
                        }
                        return r(e, [{
                            key: "clear",
                            value: function () {
                                this._list = []
                            }
                        }, {
                            key: "appendArray",
                            value: function (e) {
                                var t = this._list;
                                0 !== e.length && (t.length > 0 && e[0].originalDts < t[t.length - 1].originalDts && this.clear(), Array.prototype.push.apply(t, e))
                            }
                        }, {
                            key: "getLastSyncPointBeforeDts",
                            value: function (e) {
                                if (0 == this._list.length) return null;
                                var t = this._list,
                                    n = 0,
                                    r = t.length - 1,
                                    i = 0,
                                    o = 0,
                                    a = r;
                                e < t[0].dts && (n = 0, o = a + 1);
                                while (o <= a) {
                                    if (i = o + Math.floor((a - o) / 2), i === r || e >= t[i].dts && e < t[i + 1].dts) {
                                        n = i;
                                        break
                                    }
                                    t[i].dts < e ? o = i + 1 : a = i - 1
                                }
                                return this._list[n]
                            }
                        }]), e
                    }(), t.MediaSegmentInfoList = function () {
                        function e(t) {
                            i(this, e), this._type = t, this._list = [], this._lastAppendLocation = -1
                        }
                        return r(e, [{
                            key: "isEmpty",
                            value: function () {
                                return 0 === this._list.length
                            }
                        }, {
                            key: "clear",
                            value: function () {
                                this._list = [], this._lastAppendLocation = -1
                            }
                        }, {
                            key: "_searchNearestSegmentBefore",
                            value: function (e) {
                                var t = this._list;
                                if (0 === t.length) return -2;
                                var n = t.length - 1,
                                    r = 0,
                                    i = 0,
                                    o = n,
                                    a = 0;
                                if (e < t[0].originalBeginDts) return a = -1, a;
                                while (i <= o) {
                                    if (r = i + Math.floor((o - i) / 2), r === n || e > t[r].lastSample.originalDts && e < t[r + 1].originalBeginDts) {
                                        a = r;
                                        break
                                    }
                                    t[r].originalBeginDts < e ? i = r + 1 : o = r - 1
                                }
                                return a
                            }
                        }, {
                            key: "_searchNearestSegmentAfter",
                            value: function (e) {
                                return this._searchNearestSegmentBefore(e) + 1
                            }
                        }, {
                            key: "append",
                            value: function (e) {
                                var t = this._list,
                                    n = e,
                                    r = this._lastAppendLocation,
                                    i = 0; - 1 !== r && r < t.length && n.originalBeginDts >= t[r].lastSample.originalDts && (r === t.length - 1 || r < t.length - 1 && n.originalBeginDts < t[r + 1].originalBeginDts) ? i = r + 1 : t.length > 0 && (i = this._searchNearestSegmentBefore(n.originalBeginDts) + 1), this._lastAppendLocation = i, this._list.splice(i, 0, n)
                            }
                        }, {
                            key: "getLastSegmentBefore",
                            value: function (e) {
                                var t = this._searchNearestSegmentBefore(e);
                                return t >= 0 ? this._list[t] : null
                            }
                        }, {
                            key: "getLastSampleBefore",
                            value: function (e) {
                                var t = this.getLastSegmentBefore(e);
                                return null != t ? t.lastSample : null
                            }
                        }, {
                            key: "getLastSyncPointBefore",
                            value: function (e) {
                                var t = this._searchNearestSegmentBefore(e),
                                    n = this._list[t].syncPoints;
                                while (0 === n.length && t > 0) t--, n = this._list[t].syncPoints;
                                return n.length > 0 ? n[n.length - 1] : null
                            }
                        }, {
                            key: "type",
                            get: function () {
                                return this._type
                            }
                        }, {
                            key: "length",
                            get: function () {
                                return this._list.length
                            }
                        }]), e
                    }()
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    }), t.default = function (e) {
                        var t = null,
                            n = null,
                            r = {};

                        function o() {
                            t = new i.default(r), t.onInitSegment = u, t.onMediaSegment = f, t.onError = c, t.onMediaInfo = l, t.onCdnDropFrame = d, t.on("error", (function (e) {
                                self.postMessage({
                                    cmd: "error",
                                    source: e.data
                                })
                            }))
                        }

                        function u(e, t) {
                            self.postMessage({
                                cmd: "mediaSegmentInit",
                                source: {
                                    type: "video",
                                    data: e
                                }
                            }), t && self.postMessage({
                                cmd: "mediaSegmentInit",
                                source: {
                                    type: "audio",
                                    data: t
                                }
                            })
                        }

                        function f(e, t) {
                            self.postMessage({
                                cmd: "mediaSegment",
                                source: {
                                    type: e,
                                    data: t
                                }
                            })
                        }

                        function c(e) {
                            self.postMessage({
                                cmd: "error",
                                source: e
                            })
                        }

                        function l(e) {
                            self.postMessage({
                                cmd: "mediainfo",
                                source: e
                            })
                        }

                        function d(e) {
                            self.postMessage({
                                cmd: "cdnDropFrame",
                                source: e
                            })
                        }

                        function h(e) {
                            n.seek(e.keyframePoint, !1, e.keyframetime)
                        }

                        function p() {
                            n && (n.destroy(), y(n), n = null), t && (t.off("error"), t = null)
                        }

                        function v(e, n, r) {
                            t || o(), r && t.seek(r), self.postMessage({
                                cmd: "player-event",
                                source: {
                                    type: s.PLAYER_EVENTS.MEDIA_DEMUX_FLV,
                                    ts: Date.now()
                                }
                            });
                            var i = t.setflv(e);
                            return i
                        }

                        function m() {
                            n && (n.on("end", (function () {
                                self.postMessage({
                                    cmd: "end"
                                })
                            })), n.on("error", (function (e) {
                                self.postMessage({
                                    cmd: "error",
                                    source: e.data
                                })
                            })), n.on("heartbeat", (function (e) {
                                self.postMessage({
                                    cmd: "heartbeat",
                                    source: e.data
                                })
                            })), n.on("player-event", (function (e) {
                                self.postMessage({
                                    cmd: "player-event",
                                    source: e.data
                                })
                            })))
                        }

                        function y(e) {
                            e && (e.off("end"), e.off("error"), e.off("heartbeat"), e.off("player-event"))
                        }
                        e.addEventListener("message", (function (e) {
                            switch (e.data.cmd) {
                                case "init":
                                    r = e.data.data;
                                    break;
                                case "loadSource":
                                    n = new a.default(r), m(), n.arrivalDataCallback = v, n.open();
                                    break;
                                case "pause":
                                    n.pause();
                                    break;
                                case "seek":
                                    h(e.data.keyframe);
                                    break;
                                case "resume":
                                    n.resume();
                                    break;
                                case "destroy":
                                    p();
                                    break
                            }
                        }))
                    };
                    var r = n(7),
                        i = u(r),
                        o = n(5),
                        a = u(o),
                        s = n(2);

                    function u(e) {
                        return e && e.__esModule ? e : {
                            default: e
                        }
                    }
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    }), t.default = {
                        isLive: !1,
                        box: "flv",
                        seekInKeyframe: !0,
                        alwaysSeekKeyframe: !0,
                        lazyLoadMaxDuration: 120,
                        lazyLoadRecoverDuration: 30,
                        lockInternalProperty: !1,
                        debug: !0,
                        webWorker: !1,
                        autoCleanupSourceBuffer: !0,
                        autoCleanupMaxBackwardDuration: 10,
                        autoCleanupMinBackwardDuration: 10,
                        stashSize: 393216,
                        seekType: "range"
                    }
                }, function (e, t) {
                    var n;
                    n = function () {
                        return this
                    }();
                    try {
                        n = n || Function("return this")() || (0, eval)("this")
                    } catch (r) {
                        "object" === typeof window && (n = window)
                    }
                    e.exports = n
                }, function (e, t, n) {
                    "use strict";
                    Object.defineProperty(t, "__esModule", {
                        value: !0
                    });
                    var r = function () {
                            function e(e, t) {
                                for (var n = 0; n < t.length; n++) {
                                    var r = t[n];
                                    r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
                                }
                            }
                            return function (t, n, r) {
                                return n && e(t.prototype, n), r && e(t, r), t
                            }
                        }(),
                        i = n(11),
                        o = n(2);

                    function a(e, t) {
                        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
                    }

                    function s(e, t) {
                        if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
                        return !t || "object" !== typeof t && "function" !== typeof t ? e : t
                    }

                    function u(e, t) {
                        if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
                        e.prototype = Object.create(t && t.prototype, {
                            constructor: {
                                value: e,
                                enumerable: !1,
                                writable: !0,
                                configurable: !0
                            }
                        }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
                    }
                    var f = function (e) {
                        function t() {
                            a(this, t);
                            var e = s(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this));
                            return e.reset(), e
                        }
                        return u(t, e), r(t, [{
                            key: "reset",
                            value: function () {
                                this.loaderOpenTs = 0, this.receiveFirstPackageTs = 0, this.firstDemuxFlvTs = 0, this.firstSegmentTs = 0, this.firstPlay = 0
                            }
                        }, {
                            key: "record",
                            value: function (e) {
                                e.ts = e.ts || Date.now(), this.firstPlay || this.processFirstPlayData(e)
                            }
                        }, {
                            key: "processFirstPlayData",
                            value: function (e) {
                                switch (e.type) {
                                    case o.PLAYER_EVENTS.LOADER_CHUNK_ARRIVAL:
                                        this.receiveFirstPackageTs || (this.receiveFirstPackageTs = e.ts, this.emit("performance", {
                                            type: "receive-first-package-duration",
                                            value: this.receiveFirstPackageTs - this.loaderOpenTs
                                        }));
                                        break;
                                    case o.PLAYER_EVENTS.MEDIA_DEMUX_FLV:
                                        this.firstDemuxFlvTs || (this.firstDemuxFlvTs = e.ts, this.emit("performance", {
                                            type: "first-flv-package-duration",
                                            value: this.firstDemuxFlvTs - this.receiveFirstPackageTs
                                        }));
                                        break;
                                    case o.PLAYER_EVENTS.MEDIA_SEGMENT:
                                        this.firstSegmentTs || (this.firstSegmentTs = e.ts, this.emit("performance", {
                                            type: "first-flv-to-mp4",
                                            value: this.firstSegmentTs - this.firstDemuxFlvTs
                                        }));
                                        break;
                                    case o.PLAYER_EVENTS.LOADER_OPEN:
                                        this.loaderOpenTs || (this.loaderOpenTs = e.ts, this.emit("performance", {
                                            type: "first_loader_open_timestamp",
                                            value: this.loaderOpenTs
                                        }));
                                        break;
                                    case o.PLAYER_EVENTS.PLAYING:
                                    case o.PLAYER_EVENTS.CANPLAY:
                                    case o.PLAYER_EVENTS.TIMEUPDATE:
                                        this.firstPlay || (this.firstPlay = e.ts, this.emit("performance", {
                                            type: "first_video_frame_duration",
                                            value: this.firstPlay - this.firstSegmentTs
                                        }));
                                        break
                                }
                            }
                        }]), t
                    }(i.CustEvent);
                    t.default = f
                }])["default"]
            }))
        }
    }
]);